julia-intellij
julia-intellij copied to clipboard
[auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.30
- App Version: 2022.2.1 RC
- Last Action: Unknown
- title: [auto-generated:1173059810] null
Full StackTrace
com.intellij.diagnostic.PluginException: The default implementation of method 'getId' is deprecated, you need to override it in 'class org.ice1000.julia.lang.execution.JuliaRunConfigurationFactory'. The default implementation delegates to 'getName' which may be localized, but return value of this method must not depend on current localization. [Plugin: org.ice1000.julia]
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:83)
at com.intellij.diagnostic.PluginException.reportDeprecatedDefault(PluginException.java:110)
at com.intellij.execution.configurations.ConfigurationFactory.getId(ConfigurationFactory.java:75)
at com.intellij.execution.impl.RunManagerImplKt.getFactoryKey(RunManagerImpl.kt:1401)
at com.intellij.execution.impl.RunManagerImplKt.access$getFactoryKey(RunManagerImpl.kt:1)
at com.intellij.execution.impl.RunManagerImpl.getConfigurationTemplate(RunManagerImpl.kt:344)
at com.intellij.execution.impl.RunManagerImpl.createConfiguration(RunManagerImpl.kt:272)
at com.intellij.execution.actions.RunConfigurationProducer.cloneTemplateConfigurationStatic(RunConfigurationProducer.java:257)
at com.intellij.execution.actions.RunConfigurationProducer.cloneTemplateConfiguration(RunConfigurationProducer.java:247)
at com.intellij.execution.actions.RunConfigurationProducer.createConfigurationFromContext(RunConfigurationProducer.java:96)
at com.intellij.execution.actions.RunConfigurationProducer.findOrCreateConfigurationFromContext(RunConfigurationProducer.java:197)
at com.intellij.execution.actions.PreferredProducerFind.doGetConfigurationsFromContext(PreferredProducerFind.java:118)
at com.intellij.execution.actions.PreferredProducerFind.getConfigurationsFromContext(PreferredProducerFind.java:100)
at com.intellij.execution.actions.ConfigurationContext.getConfigurationsFromContext(ConfigurationContext.java:413)
at com.intellij.execution.actions.ConfigurationContext.findPreferredConfiguration(ConfigurationContext.java:292)
at com.intellij.execution.actions.ConfigurationContext.findExisting(ConfigurationContext.java:285)
at com.intellij.execution.actions.BaseRunConfigurationAction.findExisting(BaseRunConfigurationAction.java:65)
at com.intellij.execution.actions.BaseRunConfigurationAction.fullUpdate(BaseRunConfigurationAction.java:220)
at com.intellij.execution.actions.BaseRunConfigurationAction.update(BaseRunConfigurationAction.java:185)
at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performDumbAwareUpdate$0(ActionUtil.java:150)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareUpdate(ActionUtil.java:173)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doUpdate(ActionUpdater.java:660)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$updateActionReal$4(ActionUpdater.java:128)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:173)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:153)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.updateActionReal(ActionUpdater.java:129)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$0(ActionUpdater.java:116)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:649)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:498)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$20(ActionUpdater.java:477)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1398)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:477)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:550)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$20(ActionUpdater.java:477)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1398)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:477)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:550)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$20(ActionUpdater.java:477)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1398)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:477)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:550)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$20(ActionUpdater.java:477)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1398)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:477)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:550)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$20(ActionUpdater.java:477)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1398)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:477)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:272)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$12(ActionUpdater.java:340)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$13(ActionUpdater.java:359)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1154)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$tryRunReadActionAndCancelBeforeWrite$17(ActionUpdater.java:391)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.tryRunReadActionAndCancelBeforeWrite(ActionUpdater.java:387)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$14(ActionUpdater.java:359)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:608)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:683)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:639)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:607)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.openapi.progress.util.BackgroundTaskUtil.runUnderDisposeAwareIndicator(BackgroundTaskUtil.java:365)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$15(ActionUpdater.java:358)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:241)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:31)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:214)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:203)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.43
- App Version: 2022.2.1 RC2
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.43
- App Version: 2022.2.1 RC2
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.43
- App Version: 2022.2.1 RC2
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Mac OS X
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.43
- App Version: 2022.2.1 RC2
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IU-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IU-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IU-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version: 1.7.2
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- Attachment induced.txt: Rm9sbG93aW5nIGV4Y2VwdGlvbnMgaGFwcGVuZWQgc29vbiBhZnRlciB0aGlzIG9uZSwgbW9zdCBwcm9iYWJseSB0aGV5IGFyZSBpbmR1Y2VkLgoKCjIwMjItMDgtMThUMTk6MTc6MDYuNTczCmNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbjogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgbWV0aG9kICdnZXRJZCcgaXMgZGVwcmVjYXRlZCwgeW91IG5lZWQgdG8gb3ZlcnJpZGUgaXQgaW4gJ2NsYXNzIG9yZy5pY2UxMDAwLmp1bGlhLmxhbmcuZXhlY3V0aW9uLkp1bGlhUnVuQ29uZmlndXJhdGlvbkZhY3RvcnknLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkZWxlZ2F0ZXMgdG8gJ2dldE5hbWUnIHdoaWNoIG1heSBiZSBsb2NhbGl6ZWQsIGJ1dCByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBub3QgZGVwZW5kIG9uIGN1cnJlbnQgbG9jYWxpemF0aW9uLiBbUGx1Z2luOiBvcmcuaWNlMTAwMC5qdWxpYV0NCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmNyZWF0ZVBsdWdpbkV4Y2VwdGlvbkJ5Q2xhc3MoUGx1Z2luUHJvYmxlbVJlcG9ydGVySW1wbC5qYXZhOjIzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5jcmVhdGVCeUNsYXNzKFBsdWdpbkV4Y2VwdGlvbi5qYXZhOjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5yZXBvcnREZXByZWNhdGVkRGVmYXVsdChQbHVnaW5FeGNlcHRpb24uamF2YToxMTApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5jb25maWd1cmF0aW9ucy5Db25maWd1cmF0aW9uRmFjdG9yeS5nZXRJZChDb25maWd1cmF0aW9uRmFjdG9yeS5qYXZhOjc1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5uZXJBbmRDb25maWd1cmF0aW9uU2V0dGluZ3NJbXBsLmdldE5hbWUoUnVubmVyQW5kQ29uZmlndXJhdGlvblNldHRpbmdzSW1wbC5rdDoxNTUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmdldFNjaGVtZUtleShSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDozNykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIuZ2V0U2NoZW1lS2V5KFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjIxKQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVMaXN0TWFuYWdlci5hZGRTY2hlbWUoU2NoZW1lTGlzdE1hbmFnZXIua3Q6MzUpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo2MTIpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo0MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5vcHRpb25zLlNjaGVtZU1hbmFnZXIuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXIua3Q6MzgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmdldENvbmZpZ3VyYXRpb25UZW1wbGF0ZShSdW5NYW5hZ2VySW1wbC5rdDozNDgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmNyZWF0ZUNvbmZpZ3VyYXRpb24oUnVuTWFuYWdlckltcGwua3Q6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb25TdGF0aWMoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjU3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb24oUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjQ3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY3JlYXRlQ29uZmlndXJhdGlvbkZyb21Db250ZXh0KFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjk2KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuZmluZE9yQ3JlYXRlQ29uZmlndXJhdGlvbkZyb21Db250ZXh0KFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjE5NykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUHJlZmVycmVkUHJvZHVjZXJGaW5kLmRvR2V0Q29uZmlndXJhdGlvbnNGcm9tQ29udGV4dChQcmVmZXJyZWRQcm9kdWNlckZpbmQuamF2YToxMTgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlByZWZlcnJlZFByb2R1Y2VyRmluZC5nZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KFByZWZlcnJlZFByb2R1Y2VyRmluZC5qYXZhOjEwMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZ2V0Q29uZmlndXJhdGlvbnNGcm9tQ29udGV4dChDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjQxMykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZmluZFByZWZlcnJlZENvbmZpZ3VyYXRpb24oQ29uZmlndXJhdGlvbkNvbnRleHQuamF2YToyOTIpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkNvbmZpZ3VyYXRpb25Db250ZXh0LmZpbmRFeGlzdGluZyhDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjI4NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uZmluZEV4aXN0aW5nKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6NjUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmZ1bGxVcGRhdGUoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YToyMjApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLnVwZGF0ZShCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjE4NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uZXguQWN0aW9uVXRpbC5sYW1iZGEkcGVyZm9ybUR1bWJBd2FyZVVwZGF0ZSQwKEFjdGlvblV0aWwuamF2YToxNTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmV4LkFjdGlvblV0aWwucGVyZm9ybUR1bWJBd2FyZVVwZGF0ZShBY3Rpb25VdGlsLmphdmE6MTczKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9VcGRhdGUoQWN0aW9uVXBkYXRlci5qYXZhOjY2MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSR1cGRhdGVBY3Rpb25SZWFsJDQoQWN0aW9uVXBkYXRlci5qYXZhOjEyOCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmNhbGxBY3Rpb24oQWN0aW9uVXBkYXRlci5qYXZhOjE3MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmNhbGxBY3Rpb24oQWN0aW9uVXBkYXRlci5qYXZhOjE1MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLnVwZGF0ZUFjdGlvblJlYWwoQWN0aW9uVXBkYXRlci5qYXZhOjEyOSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRuZXckMChBY3Rpb25VcGRhdGVyLmphdmE6MTE2KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudXBkYXRlKEFjdGlvblVwZGF0ZXIuamF2YTo2NDkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo0OTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxMihBY3Rpb25VcGRhdGVyLmphdmE6MzQwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxMyhBY3Rpb25VcGRhdGVyLmphdmE6MzU5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQXBwbGljYXRpb25JbXBsLnRyeVJ1blJlYWRBY3Rpb24oQXBwbGljYXRpb25JbXBsLmphdmE6MTE1NCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSR0cnlSdW5SZWFkQWN0aW9uQW5kQ2FuY2VsQmVmb3JlV3JpdGUkMTcoQWN0aW9uVXBkYXRlci5qYXZhOjM5MSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy51dGlsLlByb2dyZXNzSW5kaWNhdG9yVXRpbHMucnVuQWN0aW9uQW5kQ2FuY2VsQmVmb3JlV3JpdGUoUHJvZ3Jlc3NJbmRpY2F0b3JVdGlscy5qYXZhOjE1OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLnRyeVJ1blJlYWRBY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZShBY3Rpb25VcGRhdGVyLmphdmE6Mzg3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxNChBY3Rpb25VcGRhdGVyLmphdmE6MzU5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5sYW1iZGEkcnVuUHJvY2VzcyQyKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YToxODgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmxhbWJkYSRleGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MkMTIoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYwOCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIucmVnaXN0ZXJJbmRpY2F0b3JBbmRSdW4oQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjY4MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIuY29tcHV0ZVVuZGVyUHJvZ3Jlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYzOSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIuZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo2MDcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Qcm9ncmVzc01hbmFnZXJJbXBsLmV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyhQcm9ncmVzc01hbmFnZXJJbXBsLmphdmE6NjApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLnJ1blByb2Nlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjE3NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy51dGlsLkJhY2tncm91bmRUYXNrVXRpbC5ydW5VbmRlckRpc3Bvc2VBd2FyZUluZGljYXRvcihCYWNrZ3JvdW5kVGFza1V0aWwuamF2YTozNjUpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDE1KEFjdGlvblVwZGF0ZXIuamF2YTozNTgpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvci5kb1J1bihCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjQxKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IuYWNjZXNzJDIwMChCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MzEpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvciQxLmV4ZWN1dGUoQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjIxNCkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5Db25jdXJyZW5jeVV0aWwucnVuVW5kZXJUaHJlYWROYW1lKENvbmN1cnJlbmN5VXRpbC5qYXZhOjIxMikNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yJDEucnVuKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyMDMpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTEzNikNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NjM1KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5FeGVjdXRvcnMkUHJpdmlsZWdlZFRocmVhZEZhY3RvcnkkMSQxLnJ1bihFeGVjdXRvcnMuamF2YTo3MDIpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxJDEucnVuKEV4ZWN1dG9ycy5qYXZhOjY5OSkNCglhdCBqYXZhLmJhc2UvamF2YS5zZWN1cml0eS5BY2Nlc3NDb250cm9sbGVyLmRvUHJpdmlsZWdlZChBY2Nlc3NDb250cm9sbGVyLmphdmE6Mzk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5FeGVjdXRvcnMkUHJpdmlsZWdlZFRocmVhZEZhY3RvcnkkMS5ydW4oRXhlY3V0b3JzLmphdmE6Njk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLmxhbmcuVGhyZWFkLnJ1bihUaHJlYWQuamF2YTo4MzMpDQoKCgoyMDIyLTA4LTE4VDE5OjE3OjA2LjU3OApjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5FeGNlcHRpb246IFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIG9mIG1ldGhvZCAnZ2V0SWQnIGlzIGRlcHJlY2F0ZWQsIHlvdSBuZWVkIHRvIG92ZXJyaWRlIGl0IGluICdjbGFzcyBvcmcuaWNlMTAwMC5qdWxpYS5sYW5nLmV4ZWN1dGlvbi5KdWxpYVJ1bkNvbmZpZ3VyYXRpb25GYWN0b3J5Jy4gVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZGVsZWdhdGVzIHRvICdnZXROYW1lJyB3aGljaCBtYXkgYmUgbG9jYWxpemVkLCBidXQgcmV0dXJuIHZhbHVlIG9mIHRoaXMgbWV0aG9kIG11c3Qgbm90IGRlcGVuZCBvbiBjdXJyZW50IGxvY2FsaXphdGlvbi4gW1BsdWdpbjogb3JnLmljZTEwMDAuanVsaWFdDQoJYXQgY29tLmludGVsbGlqLmRpYWdub3N0aWMuUGx1Z2luUHJvYmxlbVJlcG9ydGVySW1wbC5jcmVhdGVQbHVnaW5FeGNlcHRpb25CeUNsYXNzKFBsdWdpblByb2JsZW1SZXBvcnRlckltcGwuamF2YToyMykNCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5FeGNlcHRpb24uY3JlYXRlQnlDbGFzcyhQbHVnaW5FeGNlcHRpb24uamF2YTo4MykNCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5FeGNlcHRpb24ucmVwb3J0RGVwcmVjYXRlZERlZmF1bHQoUGx1Z2luRXhjZXB0aW9uLmphdmE6MTEwKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uY29uZmlndXJhdGlvbnMuQ29uZmlndXJhdGlvbkZhY3RvcnkuZ2V0SWQoQ29uZmlndXJhdGlvbkZhY3RvcnkuamF2YTo3NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVubmVyQW5kQ29uZmlndXJhdGlvblNldHRpbmdzSW1wbC5nZXROYW1lKFJ1bm5lckFuZENvbmZpZ3VyYXRpb25TZXR0aW5nc0ltcGwua3Q6MTU1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5nZXRTY2hlbWVLZXkoUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIua3Q6MzcpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmdldFNjaGVtZUtleShSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDoyMSkNCglhdCBjb20uaW50ZWxsaWouY29uZmlndXJhdGlvblN0b3JlLnNjaGVtZU1hbmFnZXIuU2NoZW1lTWFuYWdlckJhc2UucHJvY2Vzc1BlbmRpbmdDdXJyZW50U2NoZW1lTmFtZSRpbnRlbGxpal9wbGF0Zm9ybV9jb25maWd1cmF0aW9uU3RvcmVfaW1wbChTY2hlbWVNYW5hZ2VyQmFzZS5rdDoyMykNCglhdCBjb20uaW50ZWxsaWouY29uZmlndXJhdGlvblN0b3JlLnNjaGVtZU1hbmFnZXIuU2NoZW1lTGlzdE1hbmFnZXIuYWRkU2NoZW1lKFNjaGVtZUxpc3RNYW5hZ2VyLmt0Ojc4KQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVNYW5hZ2VySW1wbC5hZGRTY2hlbWUoU2NoZW1lTWFuYWdlckltcGwua3Q6NjEyKQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVNYW5hZ2VySW1wbC5hZGRTY2hlbWUoU2NoZW1lTWFuYWdlckltcGwua3Q6NDMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkub3B0aW9ucy5TY2hlbWVNYW5hZ2VyLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VyLmt0OjM4KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5NYW5hZ2VySW1wbC5nZXRDb25maWd1cmF0aW9uVGVtcGxhdGUoUnVuTWFuYWdlckltcGwua3Q6MzQ4KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5NYW5hZ2VySW1wbC5jcmVhdGVDb25maWd1cmF0aW9uKFJ1bk1hbmFnZXJJbXBsLmt0OjI3MikNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmNsb25lVGVtcGxhdGVDb25maWd1cmF0aW9uU3RhdGljKFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjI1NykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmNsb25lVGVtcGxhdGVDb25maWd1cmF0aW9uKFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjI0NykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmNyZWF0ZUNvbmZpZ3VyYXRpb25Gcm9tQ29udGV4dChSdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuamF2YTo5NikNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmZpbmRPckNyZWF0ZUNvbmZpZ3VyYXRpb25Gcm9tQ29udGV4dChSdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuamF2YToxOTcpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlByZWZlcnJlZFByb2R1Y2VyRmluZC5kb0dldENvbmZpZ3VyYXRpb25zRnJvbUNvbnRleHQoUHJlZmVycmVkUHJvZHVjZXJGaW5kLmphdmE6MTE4KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5QcmVmZXJyZWRQcm9kdWNlckZpbmQuZ2V0Q29uZmlndXJhdGlvbnNGcm9tQ29udGV4dChQcmVmZXJyZWRQcm9kdWNlckZpbmQuamF2YToxMDApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkNvbmZpZ3VyYXRpb25Db250ZXh0LmdldENvbmZpZ3VyYXRpb25zRnJvbUNvbnRleHQoQ29uZmlndXJhdGlvbkNvbnRleHQuamF2YTo0MTMpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkNvbmZpZ3VyYXRpb25Db250ZXh0LmZpbmRQcmVmZXJyZWRDb25maWd1cmF0aW9uKENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6MjkyKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5maW5kRXhpc3RpbmcoQ29uZmlndXJhdGlvbkNvbnRleHQuamF2YToyODUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmZpbmRFeGlzdGluZyhCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjY1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5CYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5mdWxsVXBkYXRlKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6MjIwKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5CYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi51cGRhdGUoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YToxODUpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmV4LkFjdGlvblV0aWwubGFtYmRhJHBlcmZvcm1EdW1iQXdhcmVVcGRhdGUkMChBY3Rpb25VdGlsLmphdmE6MTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5leC5BY3Rpb25VdGlsLnBlcmZvcm1EdW1iQXdhcmVVcGRhdGUoQWN0aW9uVXRpbC5qYXZhOjE3MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvVXBkYXRlKEFjdGlvblVwZGF0ZXIuamF2YTo2NjApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkdXBkYXRlQWN0aW9uUmVhbCQ0KEFjdGlvblVwZGF0ZXIuamF2YToxMjgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5jYWxsQWN0aW9uKEFjdGlvblVwZGF0ZXIuamF2YToxNzMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5jYWxsQWN0aW9uKEFjdGlvblVwZGF0ZXIuamF2YToxNTMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci51cGRhdGVBY3Rpb25SZWFsKEFjdGlvblVwZGF0ZXIuamF2YToxMjkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkbmV3JDAoQWN0aW9uVXBkYXRlci5qYXZhOjExNikNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLnVwZGF0ZShBY3Rpb25VcGRhdGVyLmphdmE6NjQ5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NDk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kR3JvdXBDaGlsZChBY3Rpb25VcGRhdGVyLmphdmE6NTUwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXAkMjAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb250YWluZXJzLkNvbnRhaW5lclV0aWwuY29uY2F0KENvbnRhaW5lclV0aWwuamF2YToxMzk4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9FeHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjI3MikNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTIoQWN0aW9uVXBkYXRlci5qYXZhOjM0MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTMoQWN0aW9uVXBkYXRlci5qYXZhOjM1OSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hcHBsaWNhdGlvbi5pbXBsLkFwcGxpY2F0aW9uSW1wbC50cnlSdW5SZWFkQWN0aW9uKEFwcGxpY2F0aW9uSW1wbC5qYXZhOjExNTQpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkdHJ5UnVuUmVhZEFjdGlvbkFuZENhbmNlbEJlZm9yZVdyaXRlJDE3KEFjdGlvblVwZGF0ZXIuamF2YTozOTEpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MudXRpbC5Qcm9ncmVzc0luZGljYXRvclV0aWxzLnJ1bkFjdGlvbkFuZENhbmNlbEJlZm9yZVdyaXRlKFByb2dyZXNzSW5kaWNhdG9yVXRpbHMuamF2YToxNTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci50cnlSdW5SZWFkQWN0aW9uQW5kQ2FuY2VsQmVmb3JlV3JpdGUoQWN0aW9uVXBkYXRlci5qYXZhOjM4NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTQoQWN0aW9uVXBkYXRlci5qYXZhOjM1OSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIubGFtYmRhJHJ1blByb2Nlc3MkMihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6MTg4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5sYW1iZGEkZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzJDEyKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo2MDgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLnJlZ2lzdGVySW5kaWNhdG9yQW5kUnVuKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo2ODMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmNvbXB1dGVVbmRlclByb2dyZXNzKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo2MzkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjA3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuUHJvZ3Jlc3NNYW5hZ2VySW1wbC5leGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MoUHJvZ3Jlc3NNYW5hZ2VySW1wbC5qYXZhOjYwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5ydW5Qcm9jZXNzKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YToxNzUpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MudXRpbC5CYWNrZ3JvdW5kVGFza1V0aWwucnVuVW5kZXJEaXNwb3NlQXdhcmVJbmRpY2F0b3IoQmFja2dyb3VuZFRhc2tVdGlsLmphdmE6MzY1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxNShBY3Rpb25VcGRhdGVyLmphdmE6MzU4KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IuZG9SdW4oQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjI0MSkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yLmFjY2VzcyQyMDAoQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjMxKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IkMS5leGVjdXRlKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyMTQpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuQ29uY3VycmVuY3lVdGlsLnJ1blVuZGVyVGhyZWFkTmFtZShDb25jdXJyZW5jeVV0aWwuamF2YToyMTIpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvciQxLnJ1bihCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjAzKQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjExMzYpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvciRXb3JrZXIucnVuKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjYzNSkNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JzJFByaXZpbGVnZWRUaHJlYWRGYWN0b3J5JDEkMS5ydW4oRXhlY3V0b3JzLmphdmE6NzAyKQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5FeGVjdXRvcnMkUHJpdmlsZWdlZFRocmVhZEZhY3RvcnkkMSQxLnJ1bihFeGVjdXRvcnMuamF2YTo2OTkpDQoJYXQgamF2YS5iYXNlL2phdmEuc2VjdXJpdHkuQWNjZXNzQ29udHJvbGxlci5kb1ByaXZpbGVnZWQoQWNjZXNzQ29udHJvbGxlci5qYXZhOjM5OSkNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JzJFByaXZpbGVnZWRUaHJlYWRGYWN0b3J5JDEucnVuKEV4ZWN1dG9ycy5qYXZhOjY5OSkNCglhdCBqYXZhLmJhc2UvamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6ODMzKQ0KCgoKMjAyMi0wOC0xOFQxOToxNzowNi41ODUKY29tLmludGVsbGlqLmRpYWdub3N0aWMuUGx1Z2luRXhjZXB0aW9uOiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBvZiBtZXRob2QgJ2dldElkJyBpcyBkZXByZWNhdGVkLCB5b3UgbmVlZCB0byBvdmVycmlkZSBpdCBpbiAnY2xhc3Mgb3JnLmljZTEwMDAuanVsaWEubGFuZy5leGVjdXRpb24uSnVsaWFSdW5Db25maWd1cmF0aW9uRmFjdG9yeScuIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGRlbGVnYXRlcyB0byAnZ2V0TmFtZScgd2hpY2ggbWF5IGJlIGxvY2FsaXplZCwgYnV0IHJldHVybiB2YWx1ZSBvZiB0aGlzIG1ldGhvZCBtdXN0IG5vdCBkZXBlbmQgb24gY3VycmVudCBsb2NhbGl6YXRpb24uIFtQbHVnaW46IG9yZy5pY2UxMDAwLmp1bGlhXQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpblByb2JsZW1SZXBvcnRlckltcGwuY3JlYXRlUGx1Z2luRXhjZXB0aW9uQnlDbGFzcyhQbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmphdmE6MjMpDQoJYXQgY29tLmludGVsbGlqLmRpYWdub3N0aWMuUGx1Z2luRXhjZXB0aW9uLmNyZWF0ZUJ5Q2xhc3MoUGx1Z2luRXhjZXB0aW9uLmphdmE6ODMpDQoJYXQgY29tLmludGVsbGlqLmRpYWdub3N0aWMuUGx1Z2luRXhjZXB0aW9uLnJlcG9ydERlcHJlY2F0ZWREZWZhdWx0KFBsdWdpbkV4Y2VwdGlvbi5qYXZhOjExMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmNvbmZpZ3VyYXRpb25zLkNvbmZpZ3VyYXRpb25GYWN0b3J5LmdldElkKENvbmZpZ3VyYXRpb25GYWN0b3J5LmphdmE6NzUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bm5lckFuZENvbmZpZ3VyYXRpb25TZXR0aW5nc0ltcGwuZ2V0TmFtZShSdW5uZXJBbmRDb25maWd1cmF0aW9uU2V0dGluZ3NJbXBsLmt0OjE1NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIuZ2V0U2NoZW1lS2V5KFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjM3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5nZXRTY2hlbWVLZXkoUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIua3Q6MjEpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZUxpc3RNYW5hZ2VyLmFkZFNjaGVtZShTY2hlbWVMaXN0TWFuYWdlci5rdDozNSkNCglhdCBjb20uaW50ZWxsaWouY29uZmlndXJhdGlvblN0b3JlLnNjaGVtZU1hbmFnZXIuU2NoZW1lTWFuYWdlckltcGwuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXJJbXBsLmt0OjYxMikNCglhdCBjb20uaW50ZWxsaWouY29uZmlndXJhdGlvblN0b3JlLnNjaGVtZU1hbmFnZXIuU2NoZW1lTWFuYWdlckltcGwuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXJJbXBsLmt0OjQzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLm9wdGlvbnMuU2NoZW1lTWFuYWdlci5hZGRTY2hlbWUoU2NoZW1lTWFuYWdlci5rdDozOCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuTWFuYWdlckltcGwuZ2V0Q29uZmlndXJhdGlvblRlbXBsYXRlKFJ1bk1hbmFnZXJJbXBsLmt0OjM0OCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuTWFuYWdlckltcGwuY3JlYXRlQ29uZmlndXJhdGlvbihSdW5NYW5hZ2VySW1wbC5rdDoyNzIpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5jbG9uZVRlbXBsYXRlQ29uZmlndXJhdGlvblN0YXRpYyhSdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuamF2YToyNTcpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5jbG9uZVRlbXBsYXRlQ29uZmlndXJhdGlvbihSdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuamF2YToyNDcpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5jcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6OTYpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5maW5kT3JDcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MTk3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5QcmVmZXJyZWRQcm9kdWNlckZpbmQuZG9HZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KFByZWZlcnJlZFByb2R1Y2VyRmluZC5qYXZhOjExOCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUHJlZmVycmVkUHJvZHVjZXJGaW5kLmdldENvbmZpZ3VyYXRpb25zRnJvbUNvbnRleHQoUHJlZmVycmVkUHJvZHVjZXJGaW5kLmphdmE6MTAwKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5nZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6NDEzKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5maW5kUHJlZmVycmVkQ29uZmlndXJhdGlvbihDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjI5MikNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZmluZEV4aXN0aW5nKENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6Mjg1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5CYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5maW5kRXhpc3RpbmcoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YTo2NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uZnVsbFVwZGF0ZShCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjIyMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24udXBkYXRlKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6MTg1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5leC5BY3Rpb25VdGlsLmxhbWJkYSRwZXJmb3JtRHVtYkF3YXJlVXBkYXRlJDAoQWN0aW9uVXRpbC5qYXZhOjE1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uZXguQWN0aW9uVXRpbC5wZXJmb3JtRHVtYkF3YXJlVXBkYXRlKEFjdGlvblV0aWwuamF2YToxNzMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb1VwZGF0ZShBY3Rpb25VcGRhdGVyLmphdmE6NjYwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHVwZGF0ZUFjdGlvblJlYWwkNChBY3Rpb25VcGRhdGVyLmphdmE6MTI4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTczKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTUzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudXBkYXRlQWN0aW9uUmVhbChBY3Rpb25VcGRhdGVyLmphdmE6MTI5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJG5ldyQwKEFjdGlvblVwZGF0ZXIuamF2YToxMTYpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci51cGRhdGUoQWN0aW9uVXBkYXRlci5qYXZhOjY0OSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjQ5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YToyNzIpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEyKEFjdGlvblVwZGF0ZXIuamF2YTozNDApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEzKEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uaW1wbC5BcHBsaWNhdGlvbkltcGwudHJ5UnVuUmVhZEFjdGlvbihBcHBsaWNhdGlvbkltcGwuamF2YToxMTU0KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHRyeVJ1blJlYWRBY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZSQxNyhBY3Rpb25VcGRhdGVyLmphdmE6MzkxKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuUHJvZ3Jlc3NJbmRpY2F0b3JVdGlscy5ydW5BY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZShQcm9ncmVzc0luZGljYXRvclV0aWxzLmphdmE6MTU4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudHJ5UnVuUmVhZEFjdGlvbkFuZENhbmNlbEJlZm9yZVdyaXRlKEFjdGlvblVwZGF0ZXIuamF2YTozODcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDE0KEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmxhbWJkYSRydW5Qcm9jZXNzJDIoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjE4OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIubGFtYmRhJGV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyQxMihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjA4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5yZWdpc3RlckluZGljYXRvckFuZFJ1bihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5jb21wdXRlVW5kZXJQcm9ncmVzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjM5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5leGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYwNykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLlByb2dyZXNzTWFuYWdlckltcGwuZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzKFByb2dyZXNzTWFuYWdlckltcGwuamF2YTo2MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIucnVuUHJvY2VzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6MTc1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuQmFja2dyb3VuZFRhc2tVdGlsLnJ1blVuZGVyRGlzcG9zZUF3YXJlSW5kaWNhdG9yKEJhY2tncm91bmRUYXNrVXRpbC5qYXZhOjM2NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTUoQWN0aW9uVXBkYXRlci5qYXZhOjM1OCkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yLmRvUnVuKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyNDEpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvci5hY2Nlc3MkMjAwKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YTozMSkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yJDEuZXhlY3V0ZShCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjE0KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLkNvbmN1cnJlbmN5VXRpbC5ydW5VbmRlclRocmVhZE5hbWUoQ29uY3VycmVuY3lVdGlsLmphdmE6MjEyKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IkMS5ydW4oQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjIwMykNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLnJ1bldvcmtlcihUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMTM2KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo2MzUpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxJDEucnVuKEV4ZWN1dG9ycy5qYXZhOjcwMikNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JzJFByaXZpbGVnZWRUaHJlYWRGYWN0b3J5JDEkMS5ydW4oRXhlY3V0b3JzLmphdmE6Njk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnNlY3VyaXR5LkFjY2Vzc0NvbnRyb2xsZXIuZG9Qcml2aWxlZ2VkKEFjY2Vzc0NvbnRyb2xsZXIuamF2YTozOTkpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxLnJ1bihFeGVjdXRvcnMuamF2YTo2OTkpDQoJYXQgamF2YS5iYXNlL2phdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjgzMykNCgoKCjIwMjItMDgtMThUMTk6MTc6MDYuNjM1CmNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbjogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgbWV0aG9kICdnZXRJZCcgaXMgZGVwcmVjYXRlZCwgeW91IG5lZWQgdG8gb3ZlcnJpZGUgaXQgaW4gJ2NsYXNzIG9yZy5pY2UxMDAwLmp1bGlhLmxhbmcuZXhlY3V0aW9uLkp1bGlhUnVuQ29uZmlndXJhdGlvbkZhY3RvcnknLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkZWxlZ2F0ZXMgdG8gJ2dldE5hbWUnIHdoaWNoIG1heSBiZSBsb2NhbGl6ZWQsIGJ1dCByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBub3QgZGVwZW5kIG9uIGN1cnJlbnQgbG9jYWxpemF0aW9uLiBbUGx1Z2luOiBvcmcuaWNlMTAwMC5qdWxpYV0NCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmNyZWF0ZVBsdWdpbkV4Y2VwdGlvbkJ5Q2xhc3MoUGx1Z2luUHJvYmxlbVJlcG9ydGVySW1wbC5qYXZhOjIzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5jcmVhdGVCeUNsYXNzKFBsdWdpbkV4Y2VwdGlvbi5qYXZhOjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5yZXBvcnREZXByZWNhdGVkRGVmYXVsdChQbHVnaW5FeGNlcHRpb24uamF2YToxMTApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5jb25maWd1cmF0aW9ucy5Db25maWd1cmF0aW9uRmFjdG9yeS5nZXRJZChDb25maWd1cmF0aW9uRmFjdG9yeS5qYXZhOjc1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5uZXJBbmRDb25maWd1cmF0aW9uU2V0dGluZ3NJbXBsLmdldE5hbWUoUnVubmVyQW5kQ29uZmlndXJhdGlvblNldHRpbmdzSW1wbC5rdDoxNTUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmdldFNjaGVtZUtleShSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDozNykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIuZ2V0U2NoZW1lS2V5KFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjIxKQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVMaXN0TWFuYWdlci5hZGRTY2hlbWUoU2NoZW1lTGlzdE1hbmFnZXIua3Q6MzUpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo2MTIpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo0MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5vcHRpb25zLlNjaGVtZU1hbmFnZXIuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXIua3Q6MzgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmdldENvbmZpZ3VyYXRpb25UZW1wbGF0ZShSdW5NYW5hZ2VySW1wbC5rdDozNDgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmNyZWF0ZUNvbmZpZ3VyYXRpb24oUnVuTWFuYWdlckltcGwua3Q6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb25TdGF0aWMoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjU3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb24oUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjQ3KQ0KCWF0IGNvbS5qZXRicmFpbnMucHl0aG9uLnRlc3RpbmcuQWJzdHJhY3RQeXRob25UZXN0Q29uZmlndXJhdGlvblByb2R1Y2VyLmNyZWF0ZUNvbmZpZ3VyYXRpb25Gcm9tQ29udGV4dChBYnN0cmFjdFB5dGhvblRlc3RDb25maWd1cmF0aW9uUHJvZHVjZXIua3Q6MzQpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5maW5kT3JDcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MTk3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5QcmVmZXJyZWRQcm9kdWNlckZpbmQuZG9HZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KFByZWZlcnJlZFByb2R1Y2VyRmluZC5qYXZhOjExOCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUHJlZmVycmVkUHJvZHVjZXJGaW5kLmdldENvbmZpZ3VyYXRpb25zRnJvbUNvbnRleHQoUHJlZmVycmVkUHJvZHVjZXJGaW5kLmphdmE6MTAwKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5nZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6NDEzKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5maW5kUHJlZmVycmVkQ29uZmlndXJhdGlvbihDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjI5MikNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZmluZEV4aXN0aW5nKENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6Mjg1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5CYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5maW5kRXhpc3RpbmcoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YTo2NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uZnVsbFVwZGF0ZShCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjIyMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24udXBkYXRlKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6MTg1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5leC5BY3Rpb25VdGlsLmxhbWJkYSRwZXJmb3JtRHVtYkF3YXJlVXBkYXRlJDAoQWN0aW9uVXRpbC5qYXZhOjE1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uZXguQWN0aW9uVXRpbC5wZXJmb3JtRHVtYkF3YXJlVXBkYXRlKEFjdGlvblV0aWwuamF2YToxNzMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb1VwZGF0ZShBY3Rpb25VcGRhdGVyLmphdmE6NjYwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHVwZGF0ZUFjdGlvblJlYWwkNChBY3Rpb25VcGRhdGVyLmphdmE6MTI4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTczKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTUzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudXBkYXRlQWN0aW9uUmVhbChBY3Rpb25VcGRhdGVyLmphdmE6MTI5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJG5ldyQwKEFjdGlvblVwZGF0ZXIuamF2YToxMTYpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci51cGRhdGUoQWN0aW9uVXBkYXRlci5qYXZhOjY0OSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjQ5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YToyNzIpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEyKEFjdGlvblVwZGF0ZXIuamF2YTozNDApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEzKEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uaW1wbC5BcHBsaWNhdGlvbkltcGwudHJ5UnVuUmVhZEFjdGlvbihBcHBsaWNhdGlvbkltcGwuamF2YToxMTU0KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHRyeVJ1blJlYWRBY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZSQxNyhBY3Rpb25VcGRhdGVyLmphdmE6MzkxKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuUHJvZ3Jlc3NJbmRpY2F0b3JVdGlscy5ydW5BY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZShQcm9ncmVzc0luZGljYXRvclV0aWxzLmphdmE6MTU4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudHJ5UnVuUmVhZEFjdGlvbkFuZENhbmNlbEJlZm9yZVdyaXRlKEFjdGlvblVwZGF0ZXIuamF2YTozODcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDE0KEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmxhbWJkYSRydW5Qcm9jZXNzJDIoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjE4OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIubGFtYmRhJGV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyQxMihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjA4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5yZWdpc3RlckluZGljYXRvckFuZFJ1bihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5jb21wdXRlVW5kZXJQcm9ncmVzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjM5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5leGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYwNykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLlByb2dyZXNzTWFuYWdlckltcGwuZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzKFByb2dyZXNzTWFuYWdlckltcGwuamF2YTo2MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIucnVuUHJvY2VzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6MTc1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuQmFja2dyb3VuZFRhc2tVdGlsLnJ1blVuZGVyRGlzcG9zZUF3YXJlSW5kaWNhdG9yKEJhY2tncm91bmRUYXNrVXRpbC5qYXZhOjM2NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTUoQWN0aW9uVXBkYXRlci5qYXZhOjM1OCkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yLmRvUnVuKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyNDEpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvci5hY2Nlc3MkMjAwKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YTozMSkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yJDEuZXhlY3V0ZShCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjE0KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLkNvbmN1cnJlbmN5VXRpbC5ydW5VbmRlclRocmVhZE5hbWUoQ29uY3VycmVuY3lVdGlsLmphdmE6MjEyKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IkMS5ydW4oQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjIwMykNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLnJ1bldvcmtlcihUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMTM2KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo2MzUpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxJDEucnVuKEV4ZWN1dG9ycy5qYXZhOjcwMikNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JzJFByaXZpbGVnZWRUaHJlYWRGYWN0b3J5JDEkMS5ydW4oRXhlY3V0b3JzLmphdmE6Njk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnNlY3VyaXR5LkFjY2Vzc0NvbnRyb2xsZXIuZG9Qcml2aWxlZ2VkKEFjY2Vzc0NvbnRyb2xsZXIuamF2YTozOTkpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxLnJ1bihFeGVjdXRvcnMuamF2YTo2OTkpDQoJYXQgamF2YS5iYXNlL2phdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjgzMykNCgoKCjIwMjItMDgtMThUMTk6MTc6MDYuNjU3CmNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbjogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgbWV0aG9kICdnZXRJZCcgaXMgZGVwcmVjYXRlZCwgeW91IG5lZWQgdG8gb3ZlcnJpZGUgaXQgaW4gJ2NsYXNzIG9yZy5pY2UxMDAwLmp1bGlhLmxhbmcuZXhlY3V0aW9uLkp1bGlhUnVuQ29uZmlndXJhdGlvbkZhY3RvcnknLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkZWxlZ2F0ZXMgdG8gJ2dldE5hbWUnIHdoaWNoIG1heSBiZSBsb2NhbGl6ZWQsIGJ1dCByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBub3QgZGVwZW5kIG9uIGN1cnJlbnQgbG9jYWxpemF0aW9uLiBbUGx1Z2luOiBvcmcuaWNlMTAwMC5qdWxpYV0NCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmNyZWF0ZVBsdWdpbkV4Y2VwdGlvbkJ5Q2xhc3MoUGx1Z2luUHJvYmxlbVJlcG9ydGVySW1wbC5qYXZhOjIzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5jcmVhdGVCeUNsYXNzKFBsdWdpbkV4Y2VwdGlvbi5qYXZhOjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5yZXBvcnREZXByZWNhdGVkRGVmYXVsdChQbHVnaW5FeGNlcHRpb24uamF2YToxMTApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5jb25maWd1cmF0aW9ucy5Db25maWd1cmF0aW9uRmFjdG9yeS5nZXRJZChDb25maWd1cmF0aW9uRmFjdG9yeS5qYXZhOjc1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5uZXJBbmRDb25maWd1cmF0aW9uU2V0dGluZ3NJbXBsLmdldE5hbWUoUnVubmVyQW5kQ29uZmlndXJhdGlvblNldHRpbmdzSW1wbC5rdDoxNTUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmdldFNjaGVtZUtleShSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDozNykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIuZ2V0U2NoZW1lS2V5KFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjIxKQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVMaXN0TWFuYWdlci5hZGRTY2hlbWUoU2NoZW1lTGlzdE1hbmFnZXIua3Q6MzUpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo2MTIpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo0MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5vcHRpb25zLlNjaGVtZU1hbmFnZXIuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXIua3Q6MzgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmdldENvbmZpZ3VyYXRpb25UZW1wbGF0ZShSdW5NYW5hZ2VySW1wbC5rdDozNDgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmNyZWF0ZUNvbmZpZ3VyYXRpb24oUnVuTWFuYWdlckltcGwua3Q6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb25TdGF0aWMoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjU3KQ0KCWF0IGNvbS5qZXRicmFpbnMucHl0aG9uLnRlc3RpbmcuUHlUZXN0c0NvbmZpZ3VyYXRpb25Qcm9kdWNlci5hY2Nlc3MkY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb25TdGF0aWMkcy0xMzQ1Njc1MDExKFB5VGVzdHNTaGFyZWQua3Q6NzYyKQ0KCWF0IGNvbS5qZXRicmFpbnMucHl0aG9uLnRlc3RpbmcuUHlUZXN0c0NvbmZpZ3VyYXRpb25Qcm9kdWNlci5jbG9uZVRlbXBsYXRlQ29uZmlndXJhdGlvbihQeVRlc3RzU2hhcmVkLmt0Ojg0MykNCglhdCBjb20uamV0YnJhaW5zLnB5dGhvbi50ZXN0aW5nLkFic3RyYWN0UHl0aG9uVGVzdENvbmZpZ3VyYXRpb25Qcm9kdWNlci5jcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoQWJzdHJhY3RQeXRob25UZXN0Q29uZmlndXJhdGlvblByb2R1Y2VyLmt0OjM0KQ0KCWF0IGNvbS5qZXRicmFpbnMucHl0aG9uLnRlc3RpbmcuUHlUZXN0c0NvbmZpZ3VyYXRpb25Qcm9kdWNlci5jcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoUHlUZXN0c1NoYXJlZC5rdDo4NDkpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5maW5kT3JDcmVhdGVDb25maWd1cmF0aW9uRnJvbUNvbnRleHQoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MTk3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5QcmVmZXJyZWRQcm9kdWNlckZpbmQuZG9HZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KFByZWZlcnJlZFByb2R1Y2VyRmluZC5qYXZhOjExOCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUHJlZmVycmVkUHJvZHVjZXJGaW5kLmdldENvbmZpZ3VyYXRpb25zRnJvbUNvbnRleHQoUHJlZmVycmVkUHJvZHVjZXJGaW5kLmphdmE6MTAwKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5nZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6NDEzKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5Db25maWd1cmF0aW9uQ29udGV4dC5maW5kUHJlZmVycmVkQ29uZmlndXJhdGlvbihDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjI5MikNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZmluZEV4aXN0aW5nKENvbmZpZ3VyYXRpb25Db250ZXh0LmphdmE6Mjg1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5CYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5maW5kRXhpc3RpbmcoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YTo2NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uZnVsbFVwZGF0ZShCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjIyMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24udXBkYXRlKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6MTg1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5leC5BY3Rpb25VdGlsLmxhbWJkYSRwZXJmb3JtRHVtYkF3YXJlVXBkYXRlJDAoQWN0aW9uVXRpbC5qYXZhOjE1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uZXguQWN0aW9uVXRpbC5wZXJmb3JtRHVtYkF3YXJlVXBkYXRlKEFjdGlvblV0aWwuamF2YToxNzMpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb1VwZGF0ZShBY3Rpb25VcGRhdGVyLmphdmE6NjYwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHVwZGF0ZUFjdGlvblJlYWwkNChBY3Rpb25VcGRhdGVyLmphdmE6MTI4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTczKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuY2FsbEFjdGlvbihBY3Rpb25VcGRhdGVyLmphdmE6MTUzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudXBkYXRlQWN0aW9uUmVhbChBY3Rpb25VcGRhdGVyLmphdmE6MTI5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJG5ldyQwKEFjdGlvblVwZGF0ZXIuamF2YToxMTYpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci51cGRhdGUoQWN0aW9uVXBkYXRlci5qYXZhOjY0OSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjQ5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEdyb3VwQ2hpbGQoQWN0aW9uVXBkYXRlci5qYXZhOjU1MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwJDIwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29udGFpbmVycy5Db250YWluZXJVdGlsLmNvbmNhdChDb250YWluZXJVdGlsLmphdmE6MTM5OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmRvRXhwYW5kQWN0aW9uR3JvdXAoQWN0aW9uVXBkYXRlci5qYXZhOjQ3NykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmV4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YToyNzIpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEyKEFjdGlvblVwZGF0ZXIuamF2YTozNDApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDEzKEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uaW1wbC5BcHBsaWNhdGlvbkltcGwudHJ5UnVuUmVhZEFjdGlvbihBcHBsaWNhdGlvbkltcGwuamF2YToxMTU0KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJHRyeVJ1blJlYWRBY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZSQxNyhBY3Rpb25VcGRhdGVyLmphdmE6MzkxKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuUHJvZ3Jlc3NJbmRpY2F0b3JVdGlscy5ydW5BY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZShQcm9ncmVzc0luZGljYXRvclV0aWxzLmphdmE6MTU4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudHJ5UnVuUmVhZEFjdGlvbkFuZENhbmNlbEJlZm9yZVdyaXRlKEFjdGlvblVwZGF0ZXIuamF2YTozODcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDE0KEFjdGlvblVwZGF0ZXIuamF2YTozNTkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmxhbWJkYSRydW5Qcm9jZXNzJDIoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjE4OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIubGFtYmRhJGV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyQxMihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjA4KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5yZWdpc3RlckluZGljYXRvckFuZFJ1bihDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5jb21wdXRlVW5kZXJQcm9ncmVzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6NjM5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5leGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYwNykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLlByb2dyZXNzTWFuYWdlckltcGwuZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzKFByb2dyZXNzTWFuYWdlckltcGwuamF2YTo2MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIucnVuUHJvY2VzcyhDb3JlUHJvZ3Jlc3NNYW5hZ2VyLmphdmE6MTc1KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLnV0aWwuQmFja2dyb3VuZFRhc2tVdGlsLnJ1blVuZGVyRGlzcG9zZUF3YXJlSW5kaWNhdG9yKEJhY2tncm91bmRUYXNrVXRpbC5qYXZhOjM2NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRkb0V4cGFuZEFjdGlvbkdyb3VwQXN5bmMkMTUoQWN0aW9uVXBkYXRlci5qYXZhOjM1OCkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yLmRvUnVuKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyNDEpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvci5hY2Nlc3MkMjAwKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YTozMSkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yJDEuZXhlY3V0ZShCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjE0KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLkNvbmN1cnJlbmN5VXRpbC5ydW5VbmRlclRocmVhZE5hbWUoQ29uY3VycmVuY3lVdGlsLmphdmE6MjEyKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IkMS5ydW4oQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjIwMykNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLnJ1bldvcmtlcihUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMTM2KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo2MzUpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxJDEucnVuKEV4ZWN1dG9ycy5qYXZhOjcwMikNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuRXhlY3V0b3JzJFByaXZpbGVnZWRUaHJlYWRGYWN0b3J5JDEkMS5ydW4oRXhlY3V0b3JzLmphdmE6Njk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnNlY3VyaXR5LkFjY2Vzc0NvbnRyb2xsZXIuZG9Qcml2aWxlZ2VkKEFjY2Vzc0NvbnRyb2xsZXIuamF2YTozOTkpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxLnJ1bihFeGVjdXRvcnMuamF2YTo2OTkpDQoJYXQgamF2YS5iYXNlL2phdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjgzMykNCgoKCjIwMjItMDgtMThUMTk6MTc6MDcuMjA3CmNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbjogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgbWV0aG9kICdnZXRJZCcgaXMgZGVwcmVjYXRlZCwgeW91IG5lZWQgdG8gb3ZlcnJpZGUgaXQgaW4gJ2NsYXNzIG9yZy5pY2UxMDAwLmp1bGlhLmxhbmcuZXhlY3V0aW9uLkp1bGlhUnVuQ29uZmlndXJhdGlvbkZhY3RvcnknLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkZWxlZ2F0ZXMgdG8gJ2dldE5hbWUnIHdoaWNoIG1heSBiZSBsb2NhbGl6ZWQsIGJ1dCByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBub3QgZGVwZW5kIG9uIGN1cnJlbnQgbG9jYWxpemF0aW9uLiBbUGx1Z2luOiBvcmcuaWNlMTAwMC5qdWxpYV0NCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmNyZWF0ZVBsdWdpbkV4Y2VwdGlvbkJ5Q2xhc3MoUGx1Z2luUHJvYmxlbVJlcG9ydGVySW1wbC5qYXZhOjIzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5jcmVhdGVCeUNsYXNzKFBsdWdpbkV4Y2VwdGlvbi5qYXZhOjgzKQ0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5yZXBvcnREZXByZWNhdGVkRGVmYXVsdChQbHVnaW5FeGNlcHRpb24uamF2YToxMTApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5jb25maWd1cmF0aW9ucy5Db25maWd1cmF0aW9uRmFjdG9yeS5nZXRJZChDb25maWd1cmF0aW9uRmFjdG9yeS5qYXZhOjc1KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5uZXJBbmRDb25maWd1cmF0aW9uU2V0dGluZ3NJbXBsLmdldE5hbWUoUnVubmVyQW5kQ29uZmlndXJhdGlvblNldHRpbmdzSW1wbC5rdDoxNTUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmdldFNjaGVtZUtleShSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDozNykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIuZ2V0U2NoZW1lS2V5KFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjIxKQ0KCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuc2NoZW1lTWFuYWdlci5TY2hlbWVMaXN0TWFuYWdlci5hZGRTY2hlbWUoU2NoZW1lTGlzdE1hbmFnZXIua3Q6MzUpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo2MTIpDQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLmFkZFNjaGVtZShTY2hlbWVNYW5hZ2VySW1wbC5rdDo0MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5vcHRpb25zLlNjaGVtZU1hbmFnZXIuYWRkU2NoZW1lKFNjaGVtZU1hbmFnZXIua3Q6MzgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmdldENvbmZpZ3VyYXRpb25UZW1wbGF0ZShSdW5NYW5hZ2VySW1wbC5rdDozNDgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmNyZWF0ZUNvbmZpZ3VyYXRpb24oUnVuTWFuYWdlckltcGwua3Q6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb25TdGF0aWMoUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjU3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY2xvbmVUZW1wbGF0ZUNvbmZpZ3VyYXRpb24oUnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmphdmE6MjQ3KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY3JlYXRlQ29uZmlndXJhdGlvbkZyb21Db250ZXh0KFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjk2KQ0KCWF0IGNvbS5pbnRlbGxpai5kYXRhYmFzZS5jb25zb2xlLnJ1bkNvbmZpZ3VyYXRpb24uRGF0YWJhc2VTY3JpcHRSdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuY3JlYXRlQ29uZmlndXJhdGlvbkZyb21Db250ZXh0KERhdGFiYXNlU2NyaXB0UnVuQ29uZmlndXJhdGlvblByb2R1Y2VyLmt0OjI4KQ0KCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uYWN0aW9ucy5SdW5Db25maWd1cmF0aW9uUHJvZHVjZXIuZmluZE9yQ3JlYXRlQ29uZmlndXJhdGlvbkZyb21Db250ZXh0KFJ1bkNvbmZpZ3VyYXRpb25Qcm9kdWNlci5qYXZhOjE5NykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuUHJlZmVycmVkUHJvZHVjZXJGaW5kLmRvR2V0Q29uZmlndXJhdGlvbnNGcm9tQ29udGV4dChQcmVmZXJyZWRQcm9kdWNlckZpbmQuamF2YToxMTgpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLlByZWZlcnJlZFByb2R1Y2VyRmluZC5nZXRDb25maWd1cmF0aW9uc0Zyb21Db250ZXh0KFByZWZlcnJlZFByb2R1Y2VyRmluZC5qYXZhOjEwMCkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZ2V0Q29uZmlndXJhdGlvbnNGcm9tQ29udGV4dChDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjQxMykNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQ29uZmlndXJhdGlvbkNvbnRleHQuZmluZFByZWZlcnJlZENvbmZpZ3VyYXRpb24oQ29uZmlndXJhdGlvbkNvbnRleHQuamF2YToyOTIpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkNvbmZpZ3VyYXRpb25Db250ZXh0LmZpbmRFeGlzdGluZyhDb25maWd1cmF0aW9uQ29udGV4dC5qYXZhOjI4NSkNCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmFjdGlvbnMuQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uZmluZEV4aXN0aW5nKEJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmphdmE6NjUpDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLmZ1bGxVcGRhdGUoQmFzZVJ1bkNvbmZpZ3VyYXRpb25BY3Rpb24uamF2YToyMjApDQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5hY3Rpb25zLkJhc2VSdW5Db25maWd1cmF0aW9uQWN0aW9uLnVwZGF0ZShCYXNlUnVuQ29uZmlndXJhdGlvbkFjdGlvbi5qYXZhOjE4NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uZXguQWN0aW9uVXRpbC5sYW1iZGEkcGVyZm9ybUR1bWJBd2FyZVVwZGF0ZSQwKEFjdGlvblV0aWwuamF2YToxNTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmV4LkFjdGlvblV0aWwucGVyZm9ybUR1bWJBd2FyZVVwZGF0ZShBY3Rpb25VdGlsLmphdmE6MTczKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIuZG9VcGRhdGUoQWN0aW9uVXBkYXRlci5qYXZhOjY2MCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSR1cGRhdGVBY3Rpb25SZWFsJDQoQWN0aW9uVXBkYXRlci5qYXZhOjEyOCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmNhbGxBY3Rpb24oQWN0aW9uVXBkYXRlci5qYXZhOjE3MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmNhbGxBY3Rpb24oQWN0aW9uVXBkYXRlci5qYXZhOjE1MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLnVwZGF0ZUFjdGlvblJlYWwoQWN0aW9uVXBkYXRlci5qYXZhOjEyOSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSRuZXckMChBY3Rpb25VcGRhdGVyLmphdmE6MTE2KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIudXBkYXRlKEFjdGlvblVwZGF0ZXIuamF2YTo2NDkpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo0OTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRHcm91cENoaWxkKEFjdGlvblVwZGF0ZXIuamF2YTo1NTApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cCQyMChBY3Rpb25VcGRhdGVyLmphdmE6NDc3KQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbnRhaW5lcnMuQ29udGFpbmVyVXRpbC5jb25jYXQoQ29udGFpbmVyVXRpbC5qYXZhOjEzOTgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5kb0V4cGFuZEFjdGlvbkdyb3VwKEFjdGlvblVwZGF0ZXIuamF2YTo0NzcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5leHBhbmRBY3Rpb25Hcm91cChBY3Rpb25VcGRhdGVyLmphdmE6MjcyKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxMihBY3Rpb25VcGRhdGVyLmphdmE6MzQwKQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxMyhBY3Rpb25VcGRhdGVyLmphdmE6MzU5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQXBwbGljYXRpb25JbXBsLnRyeVJ1blJlYWRBY3Rpb24oQXBwbGljYXRpb25JbXBsLmphdmE6MTE1NCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLmxhbWJkYSR0cnlSdW5SZWFkQWN0aW9uQW5kQ2FuY2VsQmVmb3JlV3JpdGUkMTcoQWN0aW9uVXBkYXRlci5qYXZhOjM5MSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy51dGlsLlByb2dyZXNzSW5kaWNhdG9yVXRpbHMucnVuQWN0aW9uQW5kQ2FuY2VsQmVmb3JlV3JpdGUoUHJvZ3Jlc3NJbmRpY2F0b3JVdGlscy5qYXZhOjE1OCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hY3Rpb25TeXN0ZW0uaW1wbC5BY3Rpb25VcGRhdGVyLnRyeVJ1blJlYWRBY3Rpb25BbmRDYW5jZWxCZWZvcmVXcml0ZShBY3Rpb25VcGRhdGVyLmphdmE6Mzg3KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFjdGlvblN5c3RlbS5pbXBsLkFjdGlvblVwZGF0ZXIubGFtYmRhJGRvRXhwYW5kQWN0aW9uR3JvdXBBc3luYyQxNChBY3Rpb25VcGRhdGVyLmphdmE6MzU5KQ0KCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLnByb2dyZXNzLmltcGwuQ29yZVByb2dyZXNzTWFuYWdlci5sYW1iZGEkcnVuUHJvY2VzcyQyKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YToxODgpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLmxhbWJkYSRleGVjdXRlUHJvY2Vzc1VuZGVyUHJvZ3Jlc3MkMTIoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYwOCkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIucmVnaXN0ZXJJbmRpY2F0b3JBbmRSdW4oQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjY4MykNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIuY29tcHV0ZVVuZGVyUHJvZ3Jlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjYzOSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIuZXhlY3V0ZVByb2Nlc3NVbmRlclByb2dyZXNzKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo2MDcpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Qcm9ncmVzc01hbmFnZXJJbXBsLmV4ZWN1dGVQcm9jZXNzVW5kZXJQcm9ncmVzcyhQcm9ncmVzc01hbmFnZXJJbXBsLmphdmE6NjApDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkucHJvZ3Jlc3MuaW1wbC5Db3JlUHJvZ3Jlc3NNYW5hZ2VyLnJ1blByb2Nlc3MoQ29yZVByb2dyZXNzTWFuYWdlci5qYXZhOjE3NSkNCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy51dGlsLkJhY2tncm91bmRUYXNrVXRpbC5ydW5VbmRlckRpc3Bvc2VBd2FyZUluZGljYXRvcihCYWNrZ3JvdW5kVGFza1V0aWwuamF2YTozNjUpDQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYWN0aW9uU3lzdGVtLmltcGwuQWN0aW9uVXBkYXRlci5sYW1iZGEkZG9FeHBhbmRBY3Rpb25Hcm91cEFzeW5jJDE1KEFjdGlvblVwZGF0ZXIuamF2YTozNTgpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvci5kb1J1bihCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MjQxKQ0KCWF0IGNvbS5pbnRlbGxpai51dGlsLmNvbmN1cnJlbmN5LkJvdW5kZWRUYXNrRXhlY3V0b3IuYWNjZXNzJDIwMChCb3VuZGVkVGFza0V4ZWN1dG9yLmphdmE6MzEpDQoJYXQgY29tLmludGVsbGlqLnV0aWwuY29uY3VycmVuY3kuQm91bmRlZFRhc2tFeGVjdXRvciQxLmV4ZWN1dGUoQm91bmRlZFRhc2tFeGVjdXRvci5qYXZhOjIxNCkNCglhdCBjb20uaW50ZWxsaWoudXRpbC5Db25jdXJyZW5jeVV0aWwucnVuVW5kZXJUaHJlYWROYW1lKENvbmN1cnJlbmN5VXRpbC5qYXZhOjIxMikNCglhdCBjb20uaW50ZWxsaWoudXRpbC5jb25jdXJyZW5jeS5Cb3VuZGVkVGFza0V4ZWN1dG9yJDEucnVuKEJvdW5kZWRUYXNrRXhlY3V0b3IuamF2YToyMDMpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTEzNikNCglhdCBqYXZhLmJhc2UvamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NjM1KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5FeGVjdXRvcnMkUHJpdmlsZWdlZFRocmVhZEZhY3RvcnkkMSQxLnJ1bihFeGVjdXRvcnMuamF2YTo3MDIpDQoJYXQgamF2YS5iYXNlL2phdmEudXRpbC5jb25jdXJyZW50LkV4ZWN1dG9ycyRQcml2aWxlZ2VkVGhyZWFkRmFjdG9yeSQxJDEucnVuKEV4ZWN1dG9ycy5qYXZhOjY5OSkNCglhdCBqYXZhLmJhc2UvamF2YS5zZWN1cml0eS5BY2Nlc3NDb250cm9sbGVyLmRvUHJpdmlsZWdlZChBY2Nlc3NDb250cm9sbGVyLmphdmE6Mzk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLnV0aWwuY29uY3VycmVudC5FeGVjdXRvcnMkUHJpdmlsZWdlZFRocmVhZEZhY3RvcnkkMS5ydW4oRXhlY3V0b3JzLmphdmE6Njk5KQ0KCWF0IGphdmEuYmFzZS9qYXZhLmxhbmcuVGhyZWFkLnJ1bihUaHJlYWQuamF2YTo4MzMpDQo=
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Mac OS X
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Mac OS X
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Mac OS X
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version: 1.6.7
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IC-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version: 1.6.7
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IC-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version: 1.6.7
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IC-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 11
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PC-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Windows 10
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Mac OS X
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Vcs.UpdateProject
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: PyCharm
- App Full Name: PyCharm
- App Version name: PyCharm
- Is EAP: false
- App Build: PY-222.3739.56
- App Version: 2022.2.1
- Last Action: Unknown
- Attachment induced.txt: Rm9sbG93aW5nIGV4Y2VwdGlvbnMgaGFwcGVuZWQgc29vbiBhZnRlciB0aGlzIG9uZSwgbW9zdCBwcm9iYWJseSB0aGV5IGFyZSBpbmR1Y2VkLgoKCjIwMjItMDgtMTlUMTg6MDM6MjQuOTQ2CmNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbjogVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgbWV0aG9kICdnZXRJZCcgaXMgZGVwcmVjYXRlZCwgeW91IG5lZWQgdG8gb3ZlcnJpZGUgaXQgaW4gJ2NsYXNzIG9yZy5pY2UxMDAwLmp1bGlhLmxhbmcuZXhlY3V0aW9uLkp1bGlhUnVuQ29uZmlndXJhdGlvbkZhY3RvcnknLiBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBkZWxlZ2F0ZXMgdG8gJ2dldE5hbWUnIHdoaWNoIG1heSBiZSBsb2NhbGl6ZWQsIGJ1dCByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBub3QgZGVwZW5kIG9uIGN1cnJlbnQgbG9jYWxpemF0aW9uLiBbUGx1Z2luOiBvcmcuaWNlMTAwMC5qdWxpYV0KCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpblByb2JsZW1SZXBvcnRlckltcGwuY3JlYXRlUGx1Z2luRXhjZXB0aW9uQnlDbGFzcyhQbHVnaW5Qcm9ibGVtUmVwb3J0ZXJJbXBsLmphdmE6MjMpCglhdCBjb20uaW50ZWxsaWouZGlhZ25vc3RpYy5QbHVnaW5FeGNlcHRpb24uY3JlYXRlQnlDbGFzcyhQbHVnaW5FeGNlcHRpb24uamF2YTo4MykKCWF0IGNvbS5pbnRlbGxpai5kaWFnbm9zdGljLlBsdWdpbkV4Y2VwdGlvbi5yZXBvcnREZXByZWNhdGVkRGVmYXVsdChQbHVnaW5FeGNlcHRpb24uamF2YToxMTApCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmNvbmZpZ3VyYXRpb25zLkNvbmZpZ3VyYXRpb25GYWN0b3J5LmdldElkKENvbmZpZ3VyYXRpb25GYWN0b3J5LmphdmE6NzUpCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuVGVtcGxhdGVEaWZmZXJlbmNlSGVscGVyLmlzVGVtcGxhdGVNb2RpZmllZChSdW5Db25maWd1cmF0aW9uU2NoZW1lTWFuYWdlci5rdDoxNDEpCglhdCBjb20uaW50ZWxsaWouZXhlY3V0aW9uLmltcGwuUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIud3JpdGVTY2hlbWUoUnVuQ29uZmlndXJhdGlvblNjaGVtZU1hbmFnZXIua3Q6MTI5KQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLndyaXRlU2NoZW1lKFJ1bkNvbmZpZ3VyYXRpb25TY2hlbWVNYW5hZ2VyLmt0OjIxKQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLnNhdmVTY2hlbWUoU2NoZW1lTWFuYWdlckltcGwua3Q6MzkzKQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5zY2hlbWVNYW5hZ2VyLlNjaGVtZU1hbmFnZXJJbXBsLnNhdmUoU2NoZW1lTWFuYWdlckltcGwua3Q6MzMzKQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5TY2hlbWVfaW1wbEt0LnNhdmUoc2NoZW1lLWltcGwua3Q6MTY0KQoJYXQgY29tLmludGVsbGlqLmV4ZWN1dGlvbi5pbXBsLlJ1bk1hbmFnZXJJbXBsLmdldFN0YXRlKFJ1bk1hbmFnZXJJbXBsLmt0OjY0MykKCWF0IGNvbS5pbnRlbGxpai5leGVjdXRpb24uaW1wbC5SdW5NYW5hZ2VySW1wbC5nZXRTdGF0ZShSdW5NYW5hZ2VySW1wbC5rdDo3OCkKCWF0IGNvbS5pbnRlbGxpai5jb25maWd1cmF0aW9uU3RvcmUuQ29tcG9uZW50U3RvcmVJbXBsLmNvbW1pdENvbXBvbmVudChDb21wb25lbnRTdG9yZUltcGwua3Q6MzM0KQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5Db21wb25lbnRTdG9yZUltcGwuY29tbWl0Q29tcG9uZW50cyRpbnRlbGxpal9wbGF0Zm9ybV9jb25maWd1cmF0aW9uU3RvcmVfaW1wbChDb21wb25lbnRTdG9yZUltcGwua3Q6MjQwKQoJYXQgY29tLmludGVsbGlqLmNvbmZpZ3VyYXRpb25TdG9yZS5Db21wb25lbnRTdG9yZVdpdGhFeHRyYUNvbXBvbmVudHMuY29tbWl0Q29tcG9uZW50cyRpbnRlbGxpal9wbGF0Zm9ybV9jb25maWd1cmF0aW9uU3RvcmVfaW1wbChDb21wb25lbnRTdG9yZVdpdGhFeHRyYUNvbXBvbmVudHMua3Q6OTQpCglhdCBjb20uaW50ZWxsaWouY29uZmlndXJhdGlvblN0b3JlLkNvbXBvbmVudFN0b3JlSW1wbCRjb21taXRDb21wb25lbnRzT25FZHQkJGlubGluZWQkd2l0aEVkdENvbnRleHQkaW50ZWxsaWpfcGxhdGZvcm1fY29uZmlndXJhdGlvblN0b3JlX2ltcGwkMS5pbnZva2VTdXNwZW5kKENvbXBvbmVudFN0b3JlSW1wbC5rdDo3MjMpCglhdCBrb3RsaW4uY29yb3V0aW5lcy5qdm0uaW50ZXJuYWwuQmFzZUNvbnRpbnVhdGlvbkltcGwucmVzdW1lV2l0aChDb250aW51YXRpb25JbXBsLmt0OjMzKQoJYXQga290bGlueC5jb3JvdXRpbmVzLkRpc3BhdGNoZWRUYXNrLnJ1bihEaXNwYXRjaGVkVGFzay5rdDoxMDYpCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hcHBsaWNhdGlvbi5jb25zdHJhaW50cy5CYXNlQ29uc3RyYWluZWRFeGVjdXRpb24kQ29tcGFuaW9uJHNjaGVkdWxlV2l0aGluQ29uc3RyYWludHMkMS5pbnZva2UoQmFzZUNvbnN0cmFpbmVkRXhlY3V0aW9uLmt0OjY4KQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uY29uc3RyYWludHMuQmFzZUNvbnN0cmFpbmVkRXhlY3V0aW9uJENvbXBhbmlvbi5zY2hlZHVsZVdpdGhpbkNvbnN0cmFpbnRzKEJhc2VDb25zdHJhaW5lZEV4ZWN1dGlvbi5rdDo3MSkKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmNvbnN0cmFpbnRzLkJhc2VDb25zdHJhaW5lZEV4ZWN1dGlvbi5zY2hlZHVsZVdpdGhpbkNvbnN0cmFpbnRzKEJhc2VDb25zdHJhaW5lZEV4ZWN1dGlvbi5rdDozOCkKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQmFzZUV4cGlyYWJsZUV4ZWN1dG9yTWl4aW5JbXBsLmFjY2VzcyRzY2hlZHVsZVdpdGhpbkNvbnN0cmFpbnRzJHMxMTUzOTAwNTQzKEJhc2VFeHBpcmFibGVFeGVjdXRvck1peGluSW1wbC5rdDoxMikKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQmFzZUV4cGlyYWJsZUV4ZWN1dG9yTWl4aW5JbXBsJHNjaGVkdWxlV2l0aGluQ29uc3RyYWludHMkJGlubGluZWQkUnVubmFibGUkMS5ydW4oUnVubmFibGUua3Q6MTkpCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hcHBsaWNhdGlvbi5UcmFuc2FjdGlvbkd1YXJkSW1wbC5ydW5XaXRoV3JpdGluZ0FsbG93ZWQoVHJhbnNhY3Rpb25HdWFyZEltcGwuamF2YToyMDkpCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hcHBsaWNhdGlvbi5UcmFuc2FjdGlvbkd1YXJkSW1wbC5hY2Nlc3MkMTAwKFRyYW5zYWN0aW9uR3VhcmRJbXBsLmphdmE6MjEpCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5hcHBsaWNhdGlvbi5UcmFuc2FjdGlvbkd1YXJkSW1wbCQxLnJ1bihUcmFuc2FjdGlvbkd1YXJkSW1wbC5qYXZhOjE5MSkKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQXBwbGljYXRpb25JbXBsLnJ1bkludGVuZGVkV3JpdGVBY3Rpb25PbkN1cnJlbnRUaHJlYWQoQXBwbGljYXRpb25JbXBsLmphdmE6ODgxKQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uaW1wbC5BcHBsaWNhdGlvbkltcGwkMy5ydW4oQXBwbGljYXRpb25JbXBsLmphdmE6NTEzKQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uaW1wbC5GbHVzaFF1ZXVlLmRvUnVuKEZsdXNoUXVldWUuamF2YTo3NSkKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuRmx1c2hRdWV1ZS5ydW5OZXh0RXZlbnQoRmx1c2hRdWV1ZS5qYXZhOjExOCkKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuRmx1c2hRdWV1ZS5mbHVzaE5vdyhGbHVzaFF1ZXVlLmphdmE6NDIpCglhdCBqYXZhLmRlc2t0b3AvamF2YS5hd3QuZXZlbnQuSW52b2NhdGlvbkV2ZW50LmRpc3BhdGNoKEludm9jYXRpb25FdmVudC5qYXZhOjMxOCkKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudFF1ZXVlLmRpc3BhdGNoRXZlbnRJbXBsKEV2ZW50UXVldWUuamF2YTo3NzkpCglhdCBqYXZhLmRlc2t0b3AvamF2YS5hd3QuRXZlbnRRdWV1ZSQ0LnJ1bihFdmVudFF1ZXVlLmphdmE6NzMwKQoJYXQgamF2YS5kZXNrdG9wL2phdmEuYXd0LkV2ZW50UXVldWUkNC5ydW4oRXZlbnRRdWV1ZS5qYXZhOjcyNCkKCWF0IGphdmEuYmFzZS9qYXZhLnNlY3VyaXR5LkFjY2Vzc0NvbnRyb2xsZXIuZG9Qcml2aWxlZ2VkKEFjY2Vzc0NvbnRyb2xsZXIuamF2YTozOTkpCglhdCBqYXZhLmJhc2UvamF2YS5zZWN1cml0eS5Qcm90ZWN0aW9uRG9tYWluJEphdmFTZWN1cml0eUFjY2Vzc0ltcGwuZG9JbnRlcnNlY3Rpb25Qcml2aWxlZ2UoUHJvdGVjdGlvbkRvbWFpbi5qYXZhOjg2KQoJYXQgamF2YS5kZXNrdG9wL2phdmEuYXd0LkV2ZW50UXVldWUuZGlzcGF0Y2hFdmVudChFdmVudFF1ZXVlLmphdmE6NzQ5KQoJYXQgY29tLmludGVsbGlqLmlkZS5JZGVFdmVudFF1ZXVlLmRlZmF1bHREaXNwYXRjaEV2ZW50KElkZUV2ZW50UXVldWUuamF2YTo5MTgpCglhdCBjb20uaW50ZWxsaWouaWRlLklkZUV2ZW50UXVldWUuX2Rpc3BhdGNoRXZlbnQoSWRlRXZlbnRRdWV1ZS5qYXZhOjc2NikKCWF0IGNvbS5pbnRlbGxpai5pZGUuSWRlRXZlbnRRdWV1ZS5sYW1iZGEkZGlzcGF0Y2hFdmVudCQ2KElkZUV2ZW50UXVldWUuamF2YTo0NTApCglhdCBjb20uaW50ZWxsaWoub3BlbmFwaS5wcm9ncmVzcy5pbXBsLkNvcmVQcm9ncmVzc01hbmFnZXIuY29tcHV0ZVByaW9yaXRpemVkKENvcmVQcm9ncmVzc01hbmFnZXIuamF2YTo3OTEpCglhdCBjb20uaW50ZWxsaWouaWRlLklkZUV2ZW50UXVldWUubGFtYmRhJGRpc3BhdGNoRXZlbnQkNyhJZGVFdmVudFF1ZXVlLmphdmE6NDQ5KQoJYXQgY29tLmludGVsbGlqLm9wZW5hcGkuYXBwbGljYXRpb24uVHJhbnNhY3Rpb25HdWFyZEltcGwucGVyZm9ybUFjdGl2aXR5KFRyYW5zYWN0aW9uR3VhcmRJbXBsLmphdmE6MTA1KQoJYXQgY29tLmludGVsbGlqLmlkZS5JZGVFdmVudFF1ZXVlLnBlcmZvcm1BY3Rpdml0eShJZGVFdmVudFF1ZXVlLmphdmE6NjI0KQoJYXQgY29tLmludGVsbGlqLmlkZS5JZGVFdmVudFF1ZXVlLmxhbWJkYSRkaXNwYXRjaEV2ZW50JDgoSWRlRXZlbnRRdWV1ZS5qYXZhOjQ0NykKCWF0IGNvbS5pbnRlbGxpai5vcGVuYXBpLmFwcGxpY2F0aW9uLmltcGwuQXBwbGljYXRpb25JbXBsLnJ1bkludGVuZGVkV3JpdGVBY3Rpb25PbkN1cnJlbnRUaHJlYWQoQXBwbGljYXRpb25JbXBsLmphdmE6ODgxKQoJYXQgY29tLmludGVsbGlqLmlkZS5JZGVFdmVudFF1ZXVlLmRpc3BhdGNoRXZlbnQoSWRlRXZlbnRRdWV1ZS5qYXZhOjQ5MykKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnB1bXBPbmVFdmVudEZvckZpbHRlcnMoRXZlbnREaXNwYXRjaFRocmVhZC5qYXZhOjIwNykKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnB1bXBFdmVudHNGb3JGaWx0ZXIoRXZlbnREaXNwYXRjaFRocmVhZC5qYXZhOjEyOCkKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnB1bXBFdmVudHNGb3JIaWVyYXJjaHkoRXZlbnREaXNwYXRjaFRocmVhZC5qYXZhOjExNykKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnB1bXBFdmVudHMoRXZlbnREaXNwYXRjaFRocmVhZC5qYXZhOjExMykKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnB1bXBFdmVudHMoRXZlbnREaXNwYXRjaFRocmVhZC5qYXZhOjEwNSkKCWF0IGphdmEuZGVza3RvcC9qYXZhLmF3dC5FdmVudERpc3BhdGNoVGhyZWFkLnJ1bihFdmVudERpc3BhdGNoVGhyZWFkLmphdmE6OTIpCg==
- title: [auto-generated:1173059810] null
- Julia Version:
- Plugin Name: Julia
- Plugin Version: 0.4.2
- OS Name: Linux
- Java Version: 17.0.3
- App Name: IDEA
- App Full Name: IntelliJ IDEA
- App Version name: IntelliJ IDEA
- Is EAP: false
- App Build: IU-222.3739.54
- App Version: 2022.2.1
- Last Action: Unknown
- title: [auto-generated:1173059810] null