1.9.2.20181011162500 - attempt to fix 536103
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/AjCompiler.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/AjCompiler.class
index 9df0d68..74be3c9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/AjCompiler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/AjCompiler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildMessageHandler.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildMessageHandler.class
index 03d9d9e..2818dba 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildMessageHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildMessageHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildProgressMonitor.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildProgressMonitor.class
index a81b44a..df97ee4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildProgressMonitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IBuildProgressMonitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/ICompilerConfiguration.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/ICompilerConfiguration.class
index 0030ce3..e30e3dd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/ICompilerConfiguration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/ICompilerConfiguration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IOutputLocationManager.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IOutputLocationManager.class
index fd4c2b2..58e3c65 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/IOutputLocationManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/IOutputLocationManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/JavaOptions.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/JavaOptions.class
index 79f0e03..1d3b1e2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/JavaOptions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/JavaOptions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.class
index 9872f64..a933a8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildNotifierAdapter.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildNotifierAdapter.class
index d6b9397..4c083e8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildNotifierAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreBuildNotifierAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreMessageHandlerAdapter.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreMessageHandlerAdapter.class
index 405590c..0f2cb8b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreMessageHandlerAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/AjdeCoreMessageHandlerAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/OutputLocationAdapter.class b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/OutputLocationAdapter.class
index d3f6c54..20b335d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/OutputLocationAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajde/core/internal/OutputLocationAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser$AjcConfigParser.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser$AjcConfigParser.class
index 95a0ec0..40ac617 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser$AjcConfigParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser$AjcConfigParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser.class
index 1f04f19..dfb5691 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/BuildArgParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/messages.properties b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/messages.properties
index 516af38..d40571f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/ajc/messages.properties
@@ -4,8 +4,8 @@
      The -Xlintfile:lint.properties allows fine-grained control. In tools.jar, see
      org/aspectj/weaver/XlintDefault.properties for the default behavior and a template to copy. 
 ### AspectJ-specific messages 
-compiler.name = AspectJ Compiler 1.9.1
-compiler.version = Eclipse Compiler #abe06abe4ce1(Apr2018), 3.14
+compiler.name = AspectJ Compiler 1.9.2
+compiler.version = Eclipse Compiler #6373b82afa49b(1-Oct-2018), 3.16
 compiler.copyright = 
 
 
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/CompilerAdapter.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/CompilerAdapter.class
index 98156b0..a8e5e3a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/CompilerAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/CompilerAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/AnonymousClassPublisher.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/AnonymousClassPublisher.class
index 2270258..8dc3077 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/AnonymousClassPublisher.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/AnonymousClassPublisher.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType$MissingImplementationException.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType$MissingImplementationException.class
index 558112e..afbc88e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType$MissingImplementationException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType$MissingImplementationException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.class
index f33866e..7106f2c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForFieldBindings.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForFieldBindings.class
index 5cd0a4d..45ef92b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForFieldBindings.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForFieldBindings.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForMethodBindings.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForMethodBindings.class
index 10ceb75..68f86f0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForMethodBindings.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/OwningClassSupportForMethodBindings.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/WarnOnSwallowedException.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/WarnOnSwallowedException.class
index 354996d..eb9ced8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/WarnOnSwallowedException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/lookup/WarnOnSwallowedException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/parser/AllowAssertAndEnumAsIdentifierTokensInPointcutExpressions.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/parser/AllowAssertAndEnumAsIdentifierTokensInPointcutExpressions.class
index dc0d503..6e489ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/parser/AllowAssertAndEnumAsIdentifierTokensInPointcutExpressions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/parser/AllowAssertAndEnumAsIdentifierTokensInPointcutExpressions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$MessageIssued.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$MessageIssued.class
index da3544a..802f301 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$MessageIssued.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$MessageIssued.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$PinpointedProblem.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$PinpointedProblem.class
index 00e2d85..9e1c41a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$PinpointedProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter$PinpointedProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.class
index 2e71342..d6f16d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.class
index 089cd0c..bb46644 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildManager.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildManager.class
index 9f7dd6e..3747ecc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjBuildManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.class
index 44ee602..aa04ff8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.class b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.class
index 1122674..b327142 100644
--- a/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BindingKey.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BindingKey.class
index d63acec..06c40bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BindingKey.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BindingKey.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.class
index 8f5f4ea..a6e9213 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer$1.class
index a3a502e..0a6fdf1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.class
index 93ab7eb..77f52e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.class
index 17b8c43..0009f5f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionContext.class
index 9225687..f145b47 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionFlags.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionFlags.class
index 878dab4..b03636a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionFlags.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionFlags.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionProposal.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionProposal.class
index 7e60f0a..50ba831 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionProposal.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionProposal.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.class
index 36529f0..b210097 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.class
index 5c76f52..3b8f531 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine$1.class
index a9911da..6ffb726 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.class
index 43ec557..8a502f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.class
index d558e75..57dd5aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Flags.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Flags.class
index 4f38edb..de145b9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Flags.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Flags.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAccessRule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAccessRule.class
index 34bfc36..10e6af8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAccessRule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAccessRule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotatable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotatable.class
index 7b3d26f..5e445d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotatable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotatable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotation.class
index 5febf8f..c014587 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer$ITextEditCapability.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer$ITextEditCapability.class
index 52d90c1..505ff15 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer$ITextEditCapability.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer$ITextEditCapability.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer.class
index d122f8b..8ca1293 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBuffer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.class
index 2b4e752..892a282 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferFactory.class
index c5c859e..9c31e95 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IBufferFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClassFile.class
index 149cfb6..7a1769a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.class
index 02e8023..fb8df48 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.class
index f528412..e1b083a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.class
index 2a61060..0552150 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeAssist.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeAssist.class
index f034f39..cf38d9d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeAssist.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeAssist.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.class
index 1f8f74d..6fc23c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.class
index f77c9fd..b9e68d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.class
index cb3a2d8..ebbf0a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.class
index 9a489dc..771cff8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.class
index a163e80..9ab4c20 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.class
index a226d3b..10cd0ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IField.class
index 111eb5f..252a91a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportContainer.class
index 49f4e7f..c10e388 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.class
index ff746f9..ed56c7c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.class
index 5b8a7bf..ecac9f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElement.class
index 734ea4f..63f05a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.class
index e89d29a..a925e30 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModel.class
index 96ef533..4715b8c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.class
index 08101c9..feee560 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaProject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaProject.class
index 627bb50..4d81232 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaProject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IJavaProject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ILocalVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ILocalVariable.class
index c00f962..8a957bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ILocalVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ILocalVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMember.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMember.class
index 58bb1af..d5bad60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMember.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMember.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.class
index cdfb50e..1112423 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMethod.class
index 1737157..f6f46c0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModularClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModularClassFile.class
index aee24aa..27a5795 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModularClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModularClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModuleDescription.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModuleDescription.class
index f0b763f..8d527de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModuleDescription.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IModuleDescription.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOpenable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOpenable.class
index fbcd103..32d53b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOpenable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOpenable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.class
index 9ac061f..45a25f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.class
index e06a41e..de00557 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragment.class
index 8f0256c..e13d5b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.class
index e8bb60d..fd70f06 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IParent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IParent.class
index 65fba99..9590a84 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IParent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IParent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.class
index 4b64165..5dec309 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IRegion.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IRegion.class
index f320122..01bb8ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IRegion.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IRegion.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.class
index 07e69e3..064f104 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceRange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceRange.class
index cf84f26..e58969e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceRange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceRange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceReference.class
index 869fe7b..88db187 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ISourceReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IType.class
index 68f7a6c..4406aca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.class
index b308a8b..5daaa7e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.class
index a4e7088..7b52210 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeParameter.class
index 71f9f65..c9d34d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeRoot.class
index 51ca3ea..5b7c6f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ITypeRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.class
index c040bdc..00c2baa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaConventions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaConventions.class
index ae4b94a..9d1cd3d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaConventions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaConventions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$1.class
index a1cf335..854b336 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$2.class
index f6abffd..6b697ea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore.class
index dc7242b..f39e880 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaCore.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaModelException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaModelException.class
index 833bf54..5554935 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaModelException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/JavaModelException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions$NamingRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions$NamingRequestor.class
index f101288..5c423bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions$NamingRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions$NamingRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions.class
index 8d5642e..d14893e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/NamingConventions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Signature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Signature.class
index 265e0de..0710a49 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Signature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/Signature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/SourceRange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/SourceRange.class
index ea3060d..d741055 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/SourceRange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/SourceRange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory$1DeprecatedDisassembler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory$1DeprecatedDisassembler.class
index e7314e7..e3e121d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory$1DeprecatedDisassembler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory$1DeprecatedDisassembler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory.class
index 6eb02b6..6cd5634 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/ToolFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.class
index e0d7295..017179b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.class
index 50b927d..cdb5121 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.class
index df05fdb..2915ee5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.class
index 370ba17..7fa6a53 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.class
index 2f66fc2..200fa69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.class
index 044922c..7f956fd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.class
index 700d466..ab427d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.class
index f158fd6..a9af2de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.class
index 314efc5..8be6815 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.class
index 713b406..3fb4481 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.class
index efc57fa..b1c35bc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AST.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AST.class
index 1fef833..c2fac44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AST.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AST.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$1.class
index 687f62c..8efe53f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IASTConverterFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IASTConverterFactory.class
index 6ca317d..f0e4f7d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IASTConverterFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IASTConverterFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IGetJavaDoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IGetJavaDoc.class
index 4466ece..d8e2e76 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IGetJavaDoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$IGetJavaDoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$ISetJavaDoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$ISetJavaDoc.class
index 24f6202..1f40858 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$ISetJavaDoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter$ISetJavaDoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.class
index 4c8cb9d..e8dec3d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.class
index d2d8380..6d3cf2e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList$Cursor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList$Cursor.class
index 72303fd..443d655 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList$Cursor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList$Cursor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList.class
index a99fd51..d5f45d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode$NodeList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.class
index 52a3e46..1e5077a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser$IASTFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser$IASTFactory.class
index 6531de1..aff757f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser$IASTFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser$IASTFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.class
index a173b31..1af3c68 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.class
index b04d069..ea202f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.class
index 2a4dc8a..803ad84 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.class
index 5653626..cfd577c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.class
index bdb8d21..eb45648 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.class
index 7599979..f9925b5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.class
index 8418262..2f18f5d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Annotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Annotation.class
index 7f51e43..48d149d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Annotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Annotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.class
index 5665b55..a9c9ae5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.class
index 867d2fb..534cd8e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.class
index 163ddfa..6976877 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.class
index 73b4795..a8b1675 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.class
index a947a40..0bf77ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.class
index d3f5eaa..f8e3df9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.class
index c782cf4..67eb9d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.class
index d3e79de..3dc9a0f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.class
index b9081e5..a3b3325 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment$Operator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment$Operator.class
index ffcdcd1..864e09e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment$Operator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment$Operator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment.class
index 1b3b1ed..9c2b862 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Assignment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.class
index 4d13473..6bef2d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.class
index 4d4a331..0148ad2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Block.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Block.class
index 6dfd031..8719437 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Block.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Block.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.class
index e992f56..60721fc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.class
index fdaf4e9..3d53185 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.class
index e0f9f58..136bf92 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.class
index 25b8476..b30c836 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.class
index f508ac4..81ab826 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.class
index 8dddd5a..3fd9f63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.class
index 9875852..c8c453c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.class
index eafceb7..3d3a964 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.class
index 64aa162..b16c58b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.class
index 6c0f32b..5cf8921 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Comment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Comment.class
index 27b5c8f..1279373 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Comment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Comment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.class
index fdea630..2277ac9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1.class
index d8c8037..e533b6e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1Requestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1Requestor.class
index 85719b7..99b1ebf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1Requestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$1Requestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$2.class
index badc082..b10935c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$IntArrayList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$IntArrayList.class
index fcea5e9..9b4a84a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$IntArrayList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver$IntArrayList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.class
index 4caf4b9..59de4ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.class
index 16d58a7..4829aae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.class
index 287dc17..eb351bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.class
index 4679137..cdc0ac3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.class
index 43a1570..8106c11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.class
index 5a4fbe9..df3c623 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$1.class
index f8d04ef..78519ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$AnnotationIdentityBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$AnnotationIdentityBinding.class
index 2f37f24..86d7109 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$AnnotationIdentityBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$AnnotationIdentityBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$BindingTables.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$BindingTables.class
index 3ef42ac..4752fe6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$BindingTables.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver$BindingTables.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.class
index 7ed32ea..27f51fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper$CommentMapperVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper$CommentMapperVisitor.class
index 0710d86..b3fb064 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper$CommentMapperVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper$CommentMapperVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.class
index 13df03a..4e3a472 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.class
index 67bca35..47c1c76 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Dimension.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Dimension.class
index 0a694c9..f4c9045 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Dimension.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Dimension.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.class
index 8736206..2a38fd5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.class
index 90730e7..1178011 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.class
index 5f5ff5f..0d3a6b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.class
index 1f8b70c..25312a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.class
index 83d01bf..d59d5d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.class
index 9757af5..bec1b0f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.class
index 8fa659f..d3db095 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Expression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Expression.class
index 713ab81..2251e0f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Expression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Expression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.class
index 34ab5fc..09717ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.class
index 6a55db3..e497e98 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.class
index 7b13134..8873fbd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.class
index 046b2f6..0c5e6be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.class
index 18ee185..6048d3c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.class
index 410288e..22febbc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.class
index 1a35fe7..874904b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IBinding.class
index 62413ea..77c3637 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.class
index 9dbe203..7955157 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.class
index 1422b8e..6d254bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.class
index 202ee9a..07ccbe9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.class
index e2d251a..ebf768a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.class
index e7e731a..f67c5c2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.class
index b2697f4..ca2c17e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.class
index 8ea2e0d..61f4a2c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.class
index 513b0b9..75f9fa5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.class
index 7e227d9..66b3207 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression$Operator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression$Operator.class
index 999bf1a..f384608 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression$Operator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression$Operator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.class
index a47814c..da0693b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Initializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Initializer.class
index 6f06e2f..d824745 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Initializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Initializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.class
index b5178db..4594f42 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite$1.class
index a7086a0..9cb4fac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.class
index aa1abde..98ea52d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.class
index 18dbc6b..c00f20e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.class
index 04148fa..e305520 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.class
index 66e1040..cc04f00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.class
index 886e513..65eae6e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LineComment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LineComment.class
index 63b1a51..5adc803 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LineComment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/LineComment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.class
index 218b708..1f5ac7d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.class
index 0f73702..0576672 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.class
index db2be95..176187b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.class
index 6e8b7c1..d416f59 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Message.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Message.class
index 748f9c9..3ee5ceb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Message.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Message.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding$LambdaMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding$LambdaMethod.class
index 1ceed68..b36c736 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding$LambdaMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding$LambdaMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.class
index e0192ab..aa7164d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.class
index f40d416..6ef10e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.class
index 793d6e5..4cd24fb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.class
index f9bc598..9d6b599 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.class
index 7e50cef..55a6147 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.class
index 5529d48..61a08d9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier$ModifierKeyword.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier$ModifierKeyword.class
index 1d4078b..7401688 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier$ModifierKeyword.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier$ModifierKeyword.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier.class
index b5e5ddf..efb8de1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Modifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.class
index 9a264e7..bbdf375 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.class
index 197dae6..d0c53aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.class
index 2dddc3b..cd86848 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier$ModuleModifierKeyword.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier$ModuleModifierKeyword.class
index a144114..5ca76bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier$ModuleModifierKeyword.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier$ModuleModifierKeyword.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.class
index 6ff53c6..a2df290 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.class
index 851b75c..485ff8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Name.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Name.class
index 3948db1..0f35e24 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Name.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Name.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.class
index de88822..a485248 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.class
index 3d67c3f..51a5c6b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.class
index 7efdbb1..01c784a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder$NodeFinderVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder$NodeFinderVisitor.class
index f594361..e35b895 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder$NodeFinderVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder$NodeFinderVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.class
index 94a4c18..eaa5cd3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.class
index 172b431..b74952d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.class
index 32d16c6..8f572b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.class
index 9b58750..2caadef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.class
index f364d01..08668b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.class
index 25ce2df..01bf578 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.class
index 6dde25a..7d512af 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.class
index 2c1e493..437f05c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.class
index cc9edc6..f5b5920 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.class
index cb9c289..fed74db 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression$Operator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression$Operator.class
index 6066394..1403576 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression$Operator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression$Operator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.class
index 2452335..dc8980a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression$Operator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression$Operator.class
index 5d94ed6..b4c2777 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression$Operator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression$Operator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.class
index 962ac61..7078c55 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType$Code.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType$Code.class
index cdb1439..4fbe09b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType$Code.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType$Code.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.class
index ef8915b..98d6fb3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.class
index 975befe..d56ec16 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.class
index 5f3e96c..2604b54 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.class
index b13f59d..71a8a61 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.class
index 7c35495..ae5b1f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.class
index 5165e5b..3a70a1c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.class
index 2fed6c8..c9e8c52 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.class
index 16f8474..092918c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.class
index 60719c0..82603b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.class
index dac6aaa..a2c8e60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.class
index f6bf7f8..bd29fa4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.class
index f5bcf26..b10681b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.class
index aab2468..3b4cb3f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.class
index 74230fa..525dd8d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Statement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Statement.class
index 1108d23..c69f1d1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Statement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Statement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.class
index 12a8583..b8dc70c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.class
index 73ec135..fdfc7fa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.class
index fb76df6..2e5fa50 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.class
index 702928a..c3c0636 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.class
index 10d5e9c..0379305 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.class
index 2d9a731..77d66f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.class
index dd439a3..b14c1ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.class
index 33da3da..a444a90 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.class
index 9128093..e511044 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TagElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TagElement.class
index ecf57ba..77953a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TagElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TagElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TextElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TextElement.class
index 6378250..a1880cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TextElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TextElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.class
index b14a43c..6b780b4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.class
index b4a11b0..ab4609b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.class
index dd0159f..fde7124 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Type.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Type.class
index 6c5bb3e..3c9f6df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Type.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/Type.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding$LocalTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding$LocalTypeBinding.class
index 9c2be79..770469f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding$LocalTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding$LocalTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.class
index d650a32..c4a3e79 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration$ITypeDeclFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration$ITypeDeclFactory.class
index b487d9e..13f2b69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration$ITypeDeclFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration$ITypeDeclFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.class
index 45e0ee3..79830a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.class
index b52982c..25396fb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.class
index 2090f98..97ea372 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.class
index 3ee732b..b461cb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.class
index d0ce14f..11de66f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UnionType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UnionType.class
index 5173c8f..5825e0a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UnionType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UnionType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.class
index 26edf78..f966d11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.class
index be9eb1f..94f8183 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.class
index e07b708..4ee5a93 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.class
index 1e4909f..735dab9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.class
index deb4bbb..53760a0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.class
index 24fee2e..f3758eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.class
index 294dcaf..89b1c97 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.class
index f5dec75..8077c8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.class
index ad0108c..4e160c4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.class
index 78a8ef7..ae268f4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$1.class
index eb3b8a7..ad1fa1b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext.class
index 28f62d9..b2d6652 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$ImportRewriteContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation.class
index 30b81e0..bcac05a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite$TypeLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.class
index 6018c39..c068f1b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.class
index e627e29..278d83a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer$SourceRange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer$SourceRange.class
index 11ab63e..694edad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer$SourceRange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer$SourceRange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.class
index 9661bf7..96d77ee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.class
index 9cde7d0..a7a970c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.class
index e6eba54..7673f36 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.class
index 833e20a..32e6082 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.class
index 67d8a1a..bfc69ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication$Messages.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication$Messages.class
index e9b4cf6..1bf9a86 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication$Messages.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication$Messages.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.class
index ab015f6..5e9ff93 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.class
index 9c9c64c..6ef0623 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.class
index 689f23e..c6d7297 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
index 7c82929..74b1652 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2006, 2011 Ben Konrath <ben@bagu.org>
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     Ben Konrath <ben@bagu.org> - initial implementation
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.class
index 2230aa5..6d6c5ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication$Messages.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication$Messages.class
index 441ff9b..378b04a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication$Messages.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication$Messages.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.class
index 6a85d68..d58c1c4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/messages.properties
index b9e5627..80693ac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/index/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2011 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.class
index 604a6e4..582a2cf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.class
index ddcc915..d105182 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.class
index 4dcdf74..94cf10f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.class
index b469073..a8aaedd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.class
index c3eedf5..ade13b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.class
index 240868c..6e500f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.class
index 760369c..62f87be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.class
index 3adebdd..6e2c82c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.class
index 62e0263..01c4fcc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.class
index 9888549..263a386 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.class
index 117d469..9308ff4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.class
index 05abdf5..b0148ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.class
index 5c3ae8d..e40c33d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.class
index 3b7bd31..96cdd5b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.class
index bef67ed..061ab5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.class
index cdb34f3..1b8335b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.class
index 40f82c3..9fc7243 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.class
index 45772d9..a0f94e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.class
index e0867bf..61ab108 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.class
index 178e9cb..a0b1e83 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.class
index 6e31eb7..30e8659 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.class
index 29e8fe7..52fa256 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.class
index 18cb9f1..be006fa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.class
index 861ee29..88b1641 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.class
index 75d2c2f..c884c02 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.class
index ec7c8a1..d56bf59 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.class
index 25a40e8..1d2f028 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.class
index 1a283bb..421b2df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.class
index f8602c8..2cc8549 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.class
index 2b07103..ff1210c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.class
index da1232f..9a3a729 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.class
index 1a306ee..50111cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$ResultCollectorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$ResultCollectorAdapter.class
index ca1c575..cf3a9ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$ResultCollectorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$ResultCollectorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$SearchPatternAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$SearchPatternAdapter.class
index f30d5d5..4e3ba21 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$SearchPatternAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$SearchPatternAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$TypeNameRequestorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$TypeNameRequestorAdapter.class
index 386cc33..9283fcf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$TypeNameRequestorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine$TypeNameRequestorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.class
index 55e1801..c4007a9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.class
index 083da6b..457cf6d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.class
index 1fd55da..9aa6f83 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.class
index d1cc428..eb5ff73 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.class
index d339ca9..04982dc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.class
index b6908d8..8039bdd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.class
index 76e8750..d0fba3f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.class
index 6199d71..898f5d0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.class
index 129b795..2f94606 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.class
index 6cd2bbd..dd73288 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.class
index 8f00144..a952289 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.class
index dba88e7..1637197 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.class
index 717730f..3d1060a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.class
index 0a2bf8a..e633cc5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.class
index 1f7fa5f..d027c56 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.class
index ae2acc4..95a8ccb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil$MergeStrategy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil$MergeStrategy.class
index 7304b9e..c60364f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil$MergeStrategy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil$MergeStrategy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.class
index de9289c..bd9d479 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.class
index c67136d..448f18b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.class
index 09ef578..3c0e8b5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.class
index 9c7db56..ad0dc8f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.class
index 744c445..4e85dfd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.class
index df5336a..075c3cf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.class
index 268ed01..a6ad347 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.class
index 2507c6e..0970195 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.class
index e98214c..ae7bd3a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.class
index 187a425..f6d88dd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.class
index 54ea672..66433ea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.class
index c08c2e3..3d9abe0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.class
index a255235..a4a82ad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.class
index e6a5032..3a0166c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.class
index 2e8574b..5421e44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.class
index 858a94d..53120a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.class
index b22f1d0..6309244 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.class
index 9673f56..4f3169e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.class
index 6116025..4ed71e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.class
index 72ad796..5390b3a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.class
index 0818f2a..d8a30fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.class
index 89bc70f..52b774a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.class
index 2ea4029..cfb2814 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.class
index 90f3803..d76f9b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.class
index 22d9959..600aa40 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.class
index d62c41e..b440781 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.class
index ed74c1a..a61a2c4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.class
index 2b4cf56..ae8bea0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.class
index 9a528e2..44e1f79 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.class
index 6d3b3ab..6765463 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.class
index c45495d..3ad07ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.class
index 2db5dfd..cf24889 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.class
index 6004ec1..6bc2eaa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.class
index 68af164..63cd433 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.class
index 9641f0f..525cdee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.class
index d061af0..d941225 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.class
index aa3590a..9fcccd5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.class
new file mode 100644
index 0000000..c453d95
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.class
new file mode 100644
index 0000000..5434ab5
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.class
new file mode 100644
index 0000000..d39da43
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.class
index 8ad32c4..b13bc19 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.class
index 234e1b9..2782563 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.class
index 402ca05..eb841fd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.class
index 3348640..ddfe2d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.class
index b6bdcb9..f750d26 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.class
index c6ddfe5..4909449 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.class
index ca4284a..29e0050 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.class
index e2601ff..e240079 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.class
index 3e3d3f4..9cf30ba 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.class
index 12087a7..e542166 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.class
index 1b09935..d64af9e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.class
index 770a1ce..e91c42d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.class
index 47b01a0..7662229 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.class
index 0677e35..3657826 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.class
index 3b08e95..cfe77ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.class
index 039ad98..8d705a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.class
index 6c41ae0..d9ad60d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.class
index 654013f..4d6c183 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1.class
index df2e3fa..5a28a48 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$10.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$10.class
index f7e4b9d..b295164 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$10.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$10.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1ImplSearchRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1ImplSearchRequestor.class
index 59b0467..bc0dab6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1ImplSearchRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$1ImplSearchRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$2.class
index 3db9713..35011a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$3.class
index 9054af3..59cf5a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$4.class
index 4cb45bc..66116c9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$5.class
index a6f1402..5e53cf8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$6.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$6.class
index e0c0043..3147431 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$6.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$6.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$7.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$7.class
index 33ddbab..d416212 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$7.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$7.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$8.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$8.class
index 70ea8d6..5b3415c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$8.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$8.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$9.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$9.class
index 17d2684..1e7904a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$9.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$9.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedConstructor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedConstructor.class
index e7a0641..78a3800 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedConstructor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedConstructor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedType.class
index 334e1f0..2ea75df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$AcceptedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$CompletionProblemFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$CompletionProblemFactory.class
index f1388a9..4ff7ebd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$CompletionProblemFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine$CompletionProblemFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.class
index 57cfef3..2026380 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.class
index 6b0c6b2..679f2e2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.class
index 904f49a..6a44426 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.class
index d16ee67..b9bb6a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.class
index c84b1a7..b174054 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.class
index 6648103..50fa584 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.class
index ee7f1a5..24541ea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.class
index 0134982..8ec1cc6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext$1.class
index 62e6ad6..ddac1a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.class
index 34f2d1d..3f033fc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$1.class
index 49672a0..aa94ec5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$GuessedTypeRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$GuessedTypeRequestor.class
index bd1c569..2d27520 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$GuessedTypeRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$GuessedTypeRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$ResolutionCleaner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$ResolutionCleaner.class
index 0cd40a1..972fbf1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$ResolutionCleaner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser$ResolutionCleaner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.class
index 4b4b365..00b9380 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1.class
index 8af563d..45e3a68 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1Visitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1Visitor.class
index 0f8a707..324596a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1Visitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$1Visitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$2.class
index 41752eb..c5d2e4a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$3.class
index 2f05af7..e8ea2aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$4.class
index b78f755..eb69999 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$1.class
index e2dda25..c04c04e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$2.class
index 490eab7..d4a628d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor.class
index 0430e6e..d4aec40 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$InheritDocVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper$AcceptedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper$AcceptedType.class
index 0fd1391..6ee8cbf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper$AcceptedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper$AcceptedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper.class
index 31afa9c..6548d07 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine$SelectionTypeNameMatchRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.class
index 32decc2..84f65a0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.class
index 90cc261..9e9114d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder$UnresolvedReferenceNameRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder$UnresolvedReferenceNameRequestor.class
index 3f512d4..d6ff02c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder$UnresolvedReferenceNameRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder$UnresolvedReferenceNameRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.class
index dd7f67e..b11a65a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.class
index 0cf342c..4a009d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.class
index 0bbcca1..d6aebf8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.class
index 387c9e4..2fcb5ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.class
index d6018bb..a7e6961 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.class
index 44a6105..a7fb8b1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.class
index 638c4f1..f44b200 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.class
index 85293f2..3e22efd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.class
index f188372..f0e01bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.class
index 53e54d7..dd56d30 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.class
index a76dee1..09219da 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.class
index cc01a02..2b483bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.class
index 466a06b..8b28ae6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.class
index 4c35774..e293947 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.class
index a153b4b..dc08e06 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.class
index cee378e..f19adc1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.class
index 4130f68..937970c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.class
index c40ac33..08d9ef1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.class
index 9754a71..fe6bcbf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.class
index a6e3fd7..48377bc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.class
index 0d55aef..0abd680 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.class
index 4f8d1b7..bb57505 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.class
index d6b9245..e439a14 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.class
index b3c98ce..d977f48 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.class
index 728b030..a2a4cde 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.class
index 7098924..5bd4979 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.class
index 95792c6..bf2d45c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.class
index 3e7558a..12cb198 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.class
index 1caa96c..92bf11b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.class
index e8af0fa..b288193 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.class
index 21f3bb8..90e5bae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.class
index ba45536..a3e9bf3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.class
index 314fd66..6d64020 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.class
index 61c1f38..1702c9c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.class
index cab7bf8..f0f4370 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.class
index 9cade1a..9b2f304 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.class
index 288105e..76a19c0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.class
index 7ee1b87..78397e4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.class
index 42fd4c8..b646975 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.class
index a73acae..8313c6e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.class
index 0396aab..778ad00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.class
index b164477..77a2032 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.class
index e94658b..c9e8fe8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.class
index cc01ec3..227731f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.class
index 4d85782..aec4d93 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.class
index 28314a6..f732f8c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.class
index d4fc371..f2e8e5f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.class
index b2e4939..40c69b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.class
index 1032f04..dae1788 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.class
index 3878a4a..20de350 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.class
index 03561ac..34668b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.class
index bf66ea6..a5c23a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.class
index 7e81f68..0bc97c2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.class
index 5ae6c22..0df1d27 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.class
index a4871e0..1e10cea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.class
index 6bb0110..5d9a497 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.class
index 1b9997d..590cb12 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.class
index e764fdf..7043f0c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.class
index 73113e7..f4c2b70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$ModuleKeyword.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$ModuleKeyword.class
index a76717b..af9803d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$ModuleKeyword.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$ModuleKeyword.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$SavedState.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$SavedState.class
index 02a0664..8fc77a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$SavedState.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser$SavedState.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.class
index dcd91ab..6017e7a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.class
index 42ca592..7123b93 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.class
index 270209a..155e021 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.class
index 5265fc4..f2e2f6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.class
index 6e3cb5b..cf31291 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.class
index 509c0a2..916e833 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.class
index e5ccf36..687f9ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.class
index 97a21fa..24d6b63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.class
index fcb54c2..47aab69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.class
index 1452a9b..63e9321 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.class
index 4ee8848..50fe59d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.class
index 50dee9b..c57b278 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.class
index f0d70f5..4231226 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.class
index 8889db4..fd9e6d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.class
index a72dee3..51502a4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.class
index 419ec71..f4b4c4d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.class
index 3313823..d054af3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.class
index d124954..63d70ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.class
index 89b3049..4a79a6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.class
index 71cecda..7dc1560 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.class
index 40b8f97..06e0f42 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.class
index c160bcd..9e34f20 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.class
index fe11c4b..c7b3ff8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.class
index 020d417..1209edd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.class
index f3d7084..639bbfa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.class
index 6ad647e..1eb099a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.class
index e8f6d31..4f4d9c4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.class
index 7763eb6..87994fb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.class
index 53111b7..7b14e5b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.class
index 4e50c68..7df164d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.class
index c180a0b..5af170b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.class
index 8d0bc7e..f6ea69f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.class
index af6d061..9a97024 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.class
index 3b2de0b..a2a7a1a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.class
index 97ceed7..ac1dc46 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.class
index fc7f871..248bc5b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.class
index 38f087f..54b8541 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.class
index 6fa82a0..04947db 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.class
index 7321442..bee1ea3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.class
index c598775..cd8de12 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.class
index f597d86..44afc39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.class
index 4065da0..2b1912e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.class
index 1064ff2..a293b5c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.class
index 021cb6b..23a9d63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$1.class
index 92be658..a99ef7d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$2.class
index 2e62ff6..3e520ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.class
index 387d363..1a38bd2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.class
index 93e944c..48d2e57 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.class
index fc1c9ea..f26f72e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.class
index 05db2f8..b86a45d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$1.class
index 68af573..d21fbad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$2.class
index 1b61d43..296133a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$3.class
index 5b4584e..0faf4d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.class
index 8f86372..1347b63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.class
index 6cd9fe6..06beb4d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$1.class
index 5985402..2beaef4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$ProblemsForRemovalFilter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$ProblemsForRemovalFilter.class
index 619e63e..f1d2741 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$ProblemsForRemovalFilter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult$ProblemsForRemovalFilter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.class
index 8afb976..b28a8f9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$1.class
index 36dbe94..e436f0d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$APTProblem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$APTProblem.class
index a405a4e..9f11a20 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$APTProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler$APTProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.class
index 0e127fa..112ac71 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$1.class
index 587d22c..aceacda 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$2.class
index c0358e6..b6f148a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$3.class
index b961d38..b8cf449 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$4.class
index a860aea..03a60a9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$5.class
index c8b6cab..40b570f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.class
index 5efc611..90da62c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.class
index 9d7984c..4bac2f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.class
index 9e8c724..fba05d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.class
index b741183..24d8a68 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.class
index bf0098f..eb58c8c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.class
index 681dd07..a30f373 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.class
index 51c1da4..1c6f071 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.class
index b26e330..516caa0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$FieldInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$FieldInfo.class
index 1be3eb4..4b511bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$FieldInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$FieldInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$MethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$MethodInfo.class
index 12351fe..8af5ae0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$MethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$MethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ModuleInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ModuleInfo.class
index a1f7f3c..37c3281 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ModuleInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ModuleInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$PackageExportInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$PackageExportInfo.class
index 16c9e97..9196736 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$PackageExportInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$PackageExportInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ParameterInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ParameterInfo.class
index af44918..120776d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ParameterInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ParameterInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$RequiresInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$RequiresInfo.class
index 81b7fc9..608e5da 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$RequiresInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$RequiresInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ServicesInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ServicesInfo.class
index 0723df7..f80a2ad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ServicesInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$ServicesInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeInfo.class
index c3d934c..4270f7c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeParameterInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeParameterInfo.class
index 96d7042..bc9746f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeParameterInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor$TypeParameterInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.class
index cbab660..47c5704 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.class
index debfbae..9aebead 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.class
index e46b4f7..8371ab3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier$LocalDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier$LocalDeclarationVisitor.class
index 8cd5791..027167b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier$LocalDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier$LocalDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.class
index a74212b..443c53e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser$1.class
index 33f9829..fe1196d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.class
index 1cfd2a8..da128a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.class
index 986173c..723fc92 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.class
index 99b8675..6dc6c05 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.class
index f5fa8fc..f1096d1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.class
index 86c6d75..bbbb28e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.class
index 5e25801..a2c1c42 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.class
index 8ed9d46..c2b3fcf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.class
index d57c710..cab1d37 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.class
index d36ac5d..a653329 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.class
index b4ed8f9..825708a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.class
index 087d5c3..684857f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.class
index 70c6dfd..5faeb77 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingOutputStream.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingOutputStream.class
index e1b2b46..2dab4b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingOutputStream.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingOutputStream.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingWriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingWriter.class
index 0bb43c3..76548bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingWriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject$ForwardingWriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.class
index bedcb2d..bc8959d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.class
index ae94915..5f914ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.class
index df66905..7e0129e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.class
index 9ff57b5..89fd021 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.class
index 6e8f3b8..8e1b0a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.class
index 335fe13..89b0800 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.class
index 0bbe4d0..725b480 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.class
index 6687516..0d59ce9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.class
index 071e6a0..d2100b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.class
index 25dd179..2eea34a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.class
index dcc4b09..364072c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.class
index cc8bb1f..8ba2ee9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.class
index 8eb3940..d2d2bb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.class
index 08a5ecf..f1f5d27 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.class
index 856b84c..78525c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.class
index e176978..3a3ac8b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.class
index 8a2bdb4..f8758e7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.class
index e75b92b..1bf58a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.class
index c8b8d2f..fcce51e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ExportsDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ExportsDirectiveImpl.class
index 10a8db0..f2c5812 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ExportsDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ExportsDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$OpensDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$OpensDirectiveImpl.class
index 33fceb0..566ff09 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$OpensDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$OpensDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$PackageDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$PackageDirectiveImpl.class
index efbe2d1..187203a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$PackageDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$PackageDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ProvidesDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ProvidesDirectiveImpl.class
index 7022794..290b4c3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ProvidesDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$ProvidesDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$RequiresDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$RequiresDirectiveImpl.class
index a0540f9..8cdfa04 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$RequiresDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$RequiresDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$UsesDirectiveImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$UsesDirectiveImpl.class
index 10a03cc..52e3344 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$UsesDirectiveImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl$UsesDirectiveImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.class
index 1f894a1..e1e5e0d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.class
index 5b61f49..cdfff94 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl$1.class
index 7fba2ab..96fa5b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.class
index 89a13b27..6b42282 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.class
index 6af8e98..9f7ebfc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.class
index e565d33..81cb7f9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl$SourceLocationComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl$SourceLocationComparator.class
index 3f4dbb5..6727f96 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl$SourceLocationComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl$SourceLocationComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.class
index 98b33d6..9597072 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.class
index b7a706b..12a2edc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.class
index e155036..2d1b694 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.class
index a4d85f7..12830ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$1.class
index f7547ea..1c74fdc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$2.class
index d69759a..aa416de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$3.class
index cb22d10..b2a61c1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$4.class
index 608e762..ab5b2c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$MemberInTypeFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$MemberInTypeFinder.class
index 2ceb87d..18d1d8d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$MemberInTypeFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl$MemberInTypeFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.class
index afad45e..60b8fe7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.class
index f69e12b..ed9dc1e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.class
index e4131a2..84fb391 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.class
index 2fd2551..82479bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.class
index ada03a9..c91d85d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$1.class
index 35a273c..ae19665 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$2.class
index 10ac8b7..4d8dc97 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.class
index ac8c5d7..51f372d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.class
index 1d7a93f..74351f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$1.class
index 8cf5b6f..74db54c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$JrtFileObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$JrtFileObject.class
index c56a9ac..88fe836 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$JrtFileObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem$JrtFileObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.class
index be51b9a..3f6a12c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.class
index 3472752..89e266b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.class
index 67e0775..67eaaa9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingError.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingError.class
index 48ade0e..540df82 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingError.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingError.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingErrorCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingErrorCollector.class
index 2cb637d..9e4b285 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingErrorCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util$EncodingErrorCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.class
index 2eb7c29..841ee27 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.class
index de73647..cad8a46 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.class
index f5a682d..fc97303 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.class
index eb0b15a..0a354a9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.class
index a50cf25..88662c9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.class
index 1d265b6..cd4bbed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1LocationCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1LocationCollector.class
index 569f802..e9a26b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1LocationCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1LocationCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1MissingTargetBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1MissingTargetBuilder.class
index 662c56c..d271632 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1MissingTargetBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$1MissingTargetBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$AnnotationTargetAllowed.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$AnnotationTargetAllowed.class
index 618a430..83291b4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$AnnotationTargetAllowed.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation$AnnotationTargetAllowed.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.class
index 6bba92e..c7abe39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.class
index f5b7fb2..a3e8b13 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.class
index 5c54c9e..b39d7f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.class
index 25ed547..36e5910 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.class
index d5d4da8..92d065e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.class
index 188992e..eaec54d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.class
index 8ce0876..8755f56 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.class
index 32757cf..b4857d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.class
index 7428a91..c330b5c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.class
index cf5d1b7..4d463de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.class
index 65bc05a..63be08f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.class
index ea80adf..74188f7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.class
index 778b32d..3fc72e2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.class
index 3e65311..831a2be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.class
index ea9a373..2d5bded 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression$1.class
index 2be537f..8213bdf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.class
index bfb618c..160ddc0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.class
index 65b328c..3c0038b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.class
index e066d85..6d95ac8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.class
index 9e19b2f..46956ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.class
index 7c7efb8..21b7ced 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration$1.class
index 2c4b11a..52ef158 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.class
index 4c1bc9b..9429d65 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.class
index 4220e20..da838e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.class
index 5724337..04abfb7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.class
index c6fd62a..628f068 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.class
index 98f90bd..34a3de4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.class
index 2a7d21d..7a48ce5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.class
index 1cffa8e..8e71b13 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.class
index 81fe4ac..4acc04f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.class
index d1ecd91..c1bd494 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.class
index bb9056b..277c7a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.class
index e26b569..23a81a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.class
index 8be6f22..c0463b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.class
index 54a1450..d11a5f9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$1.class
index 5b2706b..958c22b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$2.class
index 1623e2c..c7dda8d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$3.class
index e719bd4..857b9a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$4.class
index 196fe51..3b798b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.class
index b1872ad..0f3dc27 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.class
index 1e2ac03..0bdcdbd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage.class
index 82db6d3..3e6e0c3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting.class
index eaa855e..a13705b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.class
index 90b4b48..a0a113a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.class
index f2b3c7e..8369c17 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.class
index df488f6..e5c84f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.class
index 777f017..679a984 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.class
index 932e19d..8555bcc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.class
index cf5dba4..fe0bb9f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.class
index de9b9e4..bd03ce7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$1BridgeCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$1BridgeCollector.class
index d476cd2..65b5855 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$1BridgeCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$1BridgeCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$VisibilityInspector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$VisibilityInspector.class
index a54251a..6661969 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$VisibilityInspector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression$VisibilityInspector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.class
index 76b9fec..896021b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.class
index 565a20c..ae189e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.class
index d8fcfcd..8545bd5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.class
index df4a8e4..964224c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.class
index 8c16450..e884073 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.class
index 83ecc32..68ab277 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.class
index 4e4b5f8..8ba06a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.class
index 10f40ca..1633612 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.class
index 1311982..fe701b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.class
index dae8f6d..d9711df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.class
index 0312963..e3abbbd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.class
index 8c68cfd..60beb68 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.class
index eba2ad3..a072cfb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.class
index 120843f..da1a229 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.class
index 713ac73..f476594 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.class
index c4a57fb..b523550 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.class
index c2bec01..3b7758c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.class
index 6b6d7b9..aa5f078 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.class
index 98b45a7..6f1b7ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.class
index b64d7ad..e2fb7b5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.class
index f82cd53..052a122 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.class
index 9a302d5..a6948dc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.class
index 039bb25..509d05f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1LambdaTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1LambdaTypeBinding.class
index b75c606..9c0b429 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1LambdaTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1LambdaTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1NotPertientToApplicability.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1NotPertientToApplicability.class
index be616f9..07875a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1NotPertientToApplicability.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1NotPertientToApplicability.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ResultsAnalyser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ResultsAnalyser.class
index f259a38..b4b4f38 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ResultsAnalyser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ResultsAnalyser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ShapeComputer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ShapeComputer.class
index 5f9f4de..de065a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ShapeComputer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$1ShapeComputer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$CopyFailureException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$CopyFailureException.class
index 6c7c294..5e46b45 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$CopyFailureException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$CopyFailureException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$LocalTypeSubstitutor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$LocalTypeSubstitutor.class
new file mode 100644
index 0000000..0746714
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression$LocalTypeSubstitutor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.class
index 450f306..f5b30b1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.class
index 4f6a80d..4c64e08 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$1.class
index 82519ab..c836df7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$2.class
index 8ecf19c..d498a94 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.class
index 6e54bb5..c84bfe9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.class
index cc028c2..33d494a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.class
index ff7de2b..6b5525d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.class
index 68ccc52..5755e3b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.class
index c9b614a..f2b5a90 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$1.class
index 599af30..a926f8f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$2.class
index dc550da..b42f744 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.class
index 8594cc6..ce4a5c8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.class
index 0b5768b..e72ed5d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.class
index 576a339..498d0df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration$1.class
index 6f4a83f..586b197 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.class
index 7bdc80a..49e7412 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.class
index 2e85818..63870b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.class
index 14ff90d..e9a6f6c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.class
index 36590a7..b5b2f5d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.class
index 2d6fca9..c44ed2e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$1.class
index 8125ae8..b680bb6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$1.class
index 264096d..6a9de25 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$2.class
index 1cfcc7d..695d0f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$3.class
index 9aa6452..26ac900 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode.class
index 710185a..99a1f9e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$CheckMode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$SearchContradictions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$SearchContradictions.class
index 5e0b93a..0b781ae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$SearchContradictions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$SearchContradictions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$Severity.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$Severity.class
index 72ef2ee..5f3da50 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$Severity.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching$Severity.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.class
index 0104222..92f5d3f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.class
index f69ead0..fbb8ac0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.class
index a0d7bb1..f9a98a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.class
index 9c72f6a..3495145 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.class
index 774e181..ae81c00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression$1Decode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression$1Decode.class
index 9c3f35e..e017978 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression$1Decode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression$1Decode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.class
index 5656944..1f0e0c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.class
index 5df769a..2ab73da 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.class
index a441e71..b8ef5e3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.class
index 49638d8..97c7810 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.class
index a750cd4..a143795 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.class
index 2803e69..ae8bd0d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.class
index 5f1607b..06e35c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression$1ValidityInspector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression$1ValidityInspector.class
index a98b15b..66bc238 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression$1ValidityInspector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression$1ValidityInspector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.class
index bfd8bfa..598a5b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.class
index 456b8d5..f771c59 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.class
index 56ea76d..8dac0bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.class
index f70af42..fd0e7c4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.class
index 8ab7132..27f7577 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.class
index 91b7a15..b2b7bb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.class
index a3bdb8a..134f4fd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$1.class
index e315e09..aa34c9d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$2.class
index ba7c07c..fa2b90e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.class
index edef755..f57f801 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.class
index 01769e9..e60b7b9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.class
index ed34a11..1884ce4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.class
index bb40b47..cec175a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.class
index df63186..86f2ee5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.class
index f945fab..e168b29 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$1.class
index 0a370e4..69e3fc7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$2.class
index a4b6048..d850d97 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.class
index 4b1644f..09b69f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.class
index 3265bb5..fb24d03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.class
index 231b98b..a58745b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.class
index 47b527d..6362105 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.class
index dc800bf..56fd9ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement$1StringSwitchCase.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement$1StringSwitchCase.class
index 581c070..33f2857 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement$1StringSwitchCase.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement$1StringSwitchCase.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.class
index fe579e0..6782d03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.class
index 0368029..aaa809b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.class
index bd99816..4ade93c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.class
index 1f2bb2e..ea9b20c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.class
index 882150b..293ec0e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.class
index 7661d07..5c6cbb0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.class
index 2a88766..595d6d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.class
index 33aece4..990aef3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationCollector.class
index 7e814fd..422fbf0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition.class
index 4c90a05..64dc45d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.class
index 702ed9b..66213ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.class
index c2fb340..2add2a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.class
index 352fee0..8a5a092 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.class
index 2abf0ad..70c0567 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.class
index ba96568..9d56c89 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.class
index b7d0478..be04668 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.class
index 09b2d8f..1f81063 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule$Service.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule$Service.class
index 8a7532d..fe1e66a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule$Service.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule$Service.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.class
index 11ca156..8525fad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.class
index 8eaefd2..f101c27 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory$1.class
index f21c966..c46e222 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.class
index c47b822..2b7371a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.class
index 9a2b9c6..23310f9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$1.class
index 357929c..42e79aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$2.class
new file mode 100644
index 0000000..6872e2d
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.class
index d7bb6c5..7c5a491 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.class
index 59867b9..82191f0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$1.class
index 84246b7..04655c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$2.class
index efab325..105a0f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.class
index 80e4c66..7bfe2f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.class
index fb94abe..0f12925 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar$1.class
new file mode 100644
index 0000000..5dc3cae
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.class
new file mode 100644
index 0000000..231fe0e
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.class
index 7b106ef..f10b87a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.class
index 11b4f6a..8daf457 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.class
index b61a91a..a53001a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$Classpath.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$Classpath.class
index 9a47c38..0fcd854 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$Classpath.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$Classpath.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathNormalizer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathNormalizer.class
index e886abd..af57579 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathNormalizer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathNormalizer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathSectionProblemReporter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathSectionProblemReporter.class
index 06c2955..068b347 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathSectionProblemReporter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem$ClasspathSectionProblemReporter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.class
index ff85306..264708a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$1.class
index 3aeebff..ea7ab7f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$2.class
index 2722018..2ca9efd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$3.class
index 999d4d5..4c30542 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger$1.class
index 72cedef..d46d1f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger.class
index efe82e1..19352db 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$Logger.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$ResourceBundleFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$ResourceBundleFactory.class
index 7bcd3bc..86a2d4b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$ResourceBundleFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main$ResourceBundleFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.class
index f34f4e4..3e86c7a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$1.class
index f57f121..221fd71 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$AddExport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$AddExport.class
index 9ad93ce..9194f16b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$AddExport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder$AddExport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.class
index 3bba2f1..ee223c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
index 7923d00..c02926b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
@@ -88,6 +91,7 @@
 configure.repetition = repetition must be a positive integer: {0}
 configure.maxProblems = max problems must be a positive integer: {0}
 configure.invalidNowarnOption = invalid syntax for nowarn option: {0}
+configure.unsupportedPreview = Preview of features is supported only at the latest source level
 
 configure.invalidErrorConfiguration = invalid error configuration: ''{0}''
 configure.invalidError = invalid error token: ''{0}''. Ignoring this error token and compiling
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.class
index 370d788..8e3e11e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.class
index bb99783..2197bc7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.class
index 5dee116..9117335 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.class
index 85f6f73..92712c9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.class
index 3730289..9baf995 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.class
index db068cb..c79ad26 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.class
index ee56e6d..6801cea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.class
index 3cfbb65..34ab08b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.class
index 81b8acf..1904ed1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.class
index bd88916..a0e3722 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator$ZipFileProducer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator$ZipFileProducer.class
index 813b232..7204696 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator$ZipFileProducer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator$ZipFileProducer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.class
index ecf0be3..ee620b1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$1.class
index e6daa3c..0cf95a4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$2.class
index 8cdc71a..7dc2ed9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$BasicAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$BasicAnnotationWalker.class
index 0b1f65d..224d79c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$BasicAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$BasicAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$DispatchingAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$DispatchingAnnotationWalker.class
index 46fc329..9344700 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$DispatchingAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$DispatchingAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$FieldAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$FieldAnnotationWalker.class
index 169c82f..65f5d92 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$FieldAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$FieldAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$IMethodAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$IMethodAnnotationWalker.class
index abf7105..3afaee8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$IMethodAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$IMethodAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$MethodAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$MethodAnnotationWalker.class
index 141d4a7..ef4c596 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$MethodAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$MethodAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SingleMarkerAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SingleMarkerAnnotation.class
index c33a46a..d919d5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SingleMarkerAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SingleMarkerAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SuperTypesAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SuperTypesAnnotationWalker.class
index ae84953..647e70b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SuperTypesAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$SuperTypesAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$TypeParametersAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$TypeParametersAnnotationWalker.class
index 5205e1c..d774e67 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$TypeParametersAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider$TypeParametersAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.class
index 8499446..9c367be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.class
index b1253e8..89c5ebc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.class
index 3325952..03e0669 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.class
index 65c4329..2bab934 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.class
index 7b7a57f..f281b70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.class
index 7b0854e..b467a7a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.class
index 5ea166c..3b26988 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.class
index 9e37f25..a2fea96 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.class
index f4a66e6..70dd29a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ModuleReferenceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ModuleReferenceInfo.class
index 8ca5596..25005aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ModuleReferenceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ModuleReferenceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$PackageExportInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$PackageExportInfo.class
index 4ce53e4..ab80d86 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$PackageExportInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$PackageExportInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ServiceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ServiceInfo.class
index 4a6f0ba..fb8b3a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ServiceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo$ServiceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.class
index 83e2543..28ed8cc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker$1.class
index 6fe83c4..36e5352 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.class
index b6d4965..2bf52ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.class
index 3560827..586e487 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.class
index cc40d85..815897f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.class
index 813bd95..19f6a98 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.class
index 2950973..12a7928 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.class
index 3783bfa..6ad8d2b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.class
index 24fcb2a..15065ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.class
index 92c4d29..94f740b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.class
index 52ec4c1..afb313a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.class
index 642b2ff..80470b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.class
index 3e7658c..f136717 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.class
index 97d86d9..9d5689b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.class
index 7d981d1..bbbc79f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.class
index 4ef0a48..ddebeda 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.class
index 060991a..aaa11fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.class
index ee8ecf0..c320c75 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.class
index c286760..0f15b9b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.class
index 97161ff..6ff5377 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.class
index 8cab3aa..b34d9be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.class
index a9ad0da..614f850 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$ExceptionMarker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$ExceptionMarker.class
index 0335aa0..e67a29d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$ExceptionMarker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$ExceptionMarker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$FramePosition.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$FramePosition.class
index c8598b7..aac7143 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$FramePosition.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$FramePosition.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackDepthMarker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackDepthMarker.class
index 6771ccd..46b8a49 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackDepthMarker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackDepthMarker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackMarker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackMarker.class
index 20c3b17..5b1e377 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackMarker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream$StackMarker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.class
index 6a58bff..43d2dc8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.class
index d43121f..3f69e6d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.class
index ee73bb5..c1fb8ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.class
index 1f251dd..ff52f39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.class
index aa3e988..e03866c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.class
index cc45a8c..894864a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.class
index 2378398..e24c5ac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.class
index 6f7a38d..ecf2094 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.class
index 2e31846..ca083b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.class
index e70487b..16b1647 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.class
index 7f1cc18..91b254c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.class
index 2ae4043..1f736ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.class
index 2d162bf..73ecec7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.class
index 516777d..13d5d63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.class
index 2ec62eb..773833f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.class
index 1576b1c..fb03bf0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.class
index 2662c9a..0928c04 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.class
index 927b4fa..102cecf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.class
index d33dde4..fd0c89e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.class
index bcdb2ea..3318414 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.class
index b9c68ea..6e97e77 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.class
index bac5b08..4f00705 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$1AutoModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$1AutoModule.class
index 34da4df..04b7151 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$1AutoModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$1AutoModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IModuleReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IModuleReference.class
index e7fa9b6..01d8331 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IModuleReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IModuleReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IPackageExport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IPackageExport.class
index 3dcad70..21c17d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IPackageExport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IPackageExport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IService.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IService.class
index d27bbf5..112d3d9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IService.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule$IService.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.class
index b783be1..ce31bd6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$1.class
index fdaff5b..e0c89df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$2.class
index e860621..311fc2e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$3.class
index 9295df6..2423c60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$4.class
index 1a75f7b..faec6e4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy.class
index bd8eaa3..1101835 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment$LookupStrategy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.class
index c9dc8d6..1287343 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.class
index 185ea16..4c27885 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.class
index 3e4bd9c..bb2f3a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.class
index 7c148f8..a065aca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.class
index 4e186e1..cfe63f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.class
index 41e34e6..f6e944b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.class
index 84f5ef1..32322f0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.class
index e8e71c3..a457f1d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.class
index 4217e96..8d72f1d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.class
index 0507634..4d74a5b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker$1.class
index 4437793..6f9caaf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.class
index 1ec7f25..09ae4e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddExports.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddExports.class
index 8f0a3f4..383ee82 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddExports.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddExports.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddReads.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddReads.class
index 146e86a..fa7e129 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddReads.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$AddReads.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind.class
index f6df821..d6822f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdatesByKind.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdatesByKind.class
index c4f1234..828bcad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdatesByKind.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdatesByKind.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.class
index 6be9f4f..a22be82 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.class
index bc25ee1..af06137 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.class
index 5f63b1f..9841f22 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.class
index 354b24a..790e8d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.class
index 16c8658..7589b36 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.class
index 28f6762..322015b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.class
index b14cd64..78765f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.class
index 327bd2e..4ffe71b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.class
index a470c53..25636b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.class
index 137a373..5103b36 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.class
index 998a689..96b7548 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.class
index d30f402..005b50c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.class
index 3003f2c..2ed4467 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.class
index d8b6e77..eb34eb3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext$EscapingExceptionCatchSite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext$EscapingExceptionCatchSite.class
index d8a5ae6..accc373 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext$EscapingExceptionCatchSite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext$EscapingExceptionCatchSite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.class
index eec7c4e..4a96eae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.class
index 51d17c3..39e1f54 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.class
index c5f0cc2..62ba1a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo$AssertionFailedException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo$AssertionFailedException.class
index 39b9800..347b8d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo$AssertionFailedException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo$AssertionFailedException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.class
index 45723cb..8b3105d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.class
index 7764759..6216791 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.class
index 7730471..e1d788a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.class
index fa08c11..d7dfe4a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.class
index 7804bc2..35d0a5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.class
index 0570d2a..7691632 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.class
index 2f0f323..89f52cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.class
index 004c76c..2b6a0b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.class
index 72ef2d6..5d7db4d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.class
index ec4193e..d3c3a63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.class
index 43a9b1d..b201eb7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.class
index f4a667e..a3b003d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.class
index 0536f2e..0423666 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.class
index 8bb41a0..64042d6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.class
index 8143cd9..70336d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.class
index 44ec245..4e1e1ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.class
index e4106dc..afcc14e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.class
index e1ea4f4..011db13 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$AnnotationMethodHolder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$AnnotationMethodHolder.class
index b958ffc..7fa7b29 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$AnnotationMethodHolder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$AnnotationMethodHolder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$MethodHolder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$MethodHolder.class
index 22826dc..8729823 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$MethodHolder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder$MethodHolder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.class
index b2dcad9..b2ae6fc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.class
index 968f45e..33c01c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.class
index 3d2d90f..828a05b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding$1.class
index 6b8c7e8..2551c7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.class
index ec36da5..6eec42e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.class
index d3d0080..e4f3cdf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding$AutomaticModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding$AutomaticModuleBinding.class
index 67d5bb9..7ae63c3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding$AutomaticModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding$AutomaticModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.class
index 85caa3b..f2f129a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus.class
index 55db16e..e4a8265 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding$ExternalAnnotationStatus.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.class
index 03e02b6..62a8ba0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.class
index f725967..e7c7a7c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.class
index b24db82..92b18e3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$1.class
index 94b2050..9eb0a21 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$ThreeSets.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$ThreeSets.class
index 8336934..3cbc03b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$ThreeSets.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet$ThreeSets.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.class
index c18787c..a72cfdf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.class
index e525276..b86e2d0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18$1.class
index f8e965e..901f817 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.class
index ea099e9..0e99a01 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.class
index c75fe62..74a6ccb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.class
index ac454a0..563649e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.class
index e890f66..aa782cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.class
index 31863be..3d39371 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.class
index 3a04673..c60a831 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.class
index 0dcdba3..4380120 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.class
index 4695a5a..2c476ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair$UnresolvedEnumConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair$UnresolvedEnumConstant.class
index 41e9338..b9c4aa2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair$UnresolvedEnumConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair$UnresolvedEnumConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.class
index b1f36c9..d66d07f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.class
index 8bb327c..f8880d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.class
index af1d56c..15064eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.class
index de728c1..42bc908 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier$InheritedNonNullnessInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier$InheritedNonNullnessInfo.class
index 823217a..ca650d3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier$InheritedNonNullnessInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier$InheritedNonNullnessInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.class
index 3f3e145..81079a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.class
index a2db3b5..176e76e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.class
index 1e97160..697dc7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.class
index beae5cb..a7c6875 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$1.class
index 559a9b4..1e14278 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$2.class
index 3033370..7d869cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$3.class
index 2867cdc..223b7bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$InferenceOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$InferenceOperation.class
index 038a830..20447ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$InferenceOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$InferenceOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$SuspendedInferenceRecord.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$SuspendedInferenceRecord.class
index ad4b664..7ba81fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$SuspendedInferenceRecord.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18$SuspendedInferenceRecord.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.class
index 6d9ef48..2d3034e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.class
index d517b5f..8f2f830 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution$1.class
index 3b879ea..6c59a1b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.class
index d4fa63b..211d162 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable$InferenceVarKey.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable$InferenceVarKey.class
index 4d90962..83c68bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable$InferenceVarKey.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable$InferenceVarKey.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.class
index 56cfde5..6184ed9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.class
index 20a1427..c174d26 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.class
index 0cf9025..f971b3c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite$EmptyWithAstNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite$EmptyWithAstNode.class
index 519ce9b..62c1bdb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite$EmptyWithAstNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite$EmptyWithAstNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.class
index 2f14d07..fe2a20a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.class
index 78e0892..f8a134a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.class
index b6fe7ac..1979da6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment$1.class
index e3d0416..07d41da 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.class
index 499128c..8be0fbf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.class
index 6c4c957..533653f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.class
index 45c13f2..77ed864 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope$1.class
index 36015b6..9cc07f4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.class
index f99fbc1..35b6a78 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.class
index edb8e69..7b8aad3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.class
index b82cf39..2f264ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.class
index 1f2d6ec..0e3fcbb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding$UnNamedModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding$UnNamedModule.class
index 63f65e6..cf49844 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding$UnNamedModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding$UnNamedModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.class
index 82a747c..e91b8b4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.class
index 8dadfe3..7e35745 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.class
index 82030ac..f08bd05 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.class
index a45a15f..eabc7ac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.class
index a0f5c11..874dd6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$1.class
index 5f82449..ab49074 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$2.class
index 27767b8..3d288ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$MixedProvider.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$MixedProvider.class
index c63e4a8..34397c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$MixedProvider.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider$MixedProvider.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.class
index c520076..4c3e1e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.class
index 54c3e91..a8af9e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding$LingeringTypeVariableEliminator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding$LingeringTypeVariableEliminator.class
index 1b8faaa..24abdb9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding$LingeringTypeVariableEliminator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding$LingeringTypeVariableEliminator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.class
index 60fdb38..cc2228b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$1.class
index 421e020..50c879c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$2.class
index 756f5b4..9f291dc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.class
index 7352096..cfacfa4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.class
index 2a6daab..4eb5efa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.class
index e506455..92ae798 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.class
index 4916366..45ba75a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.class
index 814892e..61887bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.class
index a928de4..a608b81 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.class
index 6b526d2..19c4676 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.class
index af535e6..3c42970 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.class
index 97dfe94..edcd155 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.class
index 1b20349..7a19857 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.class
index 165c25e..824b3f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$1.class
index 5730e7e..c6f11b4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$2.class
index 6b642a7..b59681a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.class
index 817736e..df5f04e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$1.class
index 0077856..ebc114d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$2.class
index 77bc8ed..8a48984 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$3.class
index 0a086f9..c470989 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.class
index a3a4508..0c4d962 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$1.class
index d46be51..276655d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$2.class
index 1b02f2f..5c03cd6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$3.class
index 1c38c21..752930f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$MethodClashException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$MethodClashException.class
index 7e1d036..2a6ef40 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$MethodClashException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$MethodClashException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$NullDefaultRange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$NullDefaultRange.class
index 45dfe99..b82ac70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$NullDefaultRange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$NullDefaultRange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$Substitutor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$Substitutor.class
index 0b6e4cc..0b12e41 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$Substitutor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope$Substitutor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.class
index 1fca480..19b44ac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.class
index ef13aac..691c9a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.class
index 4c9bdf4..97ff105 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.class
index d1b2d52..bca17f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.class
index 5269856..e12a88d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.class
index afb39f4..fbb985c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution$NullSubstitution.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution$NullSubstitution.class
new file mode 100644
index 0000000..a062c4b
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution$NullSubstitution.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.class
index cc4a01f..e2fcd66 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.class
index 0e659a5..82dd013 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.class
index 317ae26..81d4cf2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.class
index 44a92ac..e7b4f70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.class
index d0b9549..9e480df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.class
index 1b386e1..95483d3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding$1.class
index 406c6be..63c86db 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.class
index af44d68..b219b11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.class
index 9cecff3..9877169 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.class
index ad988fc..2e5b70b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$BoundCheckStatus.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$BoundCheckStatus.class
index eae81a3..343fa90 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$BoundCheckStatus.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$BoundCheckStatus.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$CloseMethodRecord.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$CloseMethodRecord.class
index df4a175..a5fd298 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$CloseMethodRecord.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$CloseMethodRecord.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$DangerousMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$DangerousMethod.class
index c3cb64f..a3384b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$DangerousMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants$DangerousMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.class
index fe7189e..c25b31c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes$PTBKey.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes$PTBKey.class
index ad2e57f..32cfa3c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes$PTBKey.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes$PTBKey.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes.class
index b03a944..05e6e77 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem$HashedParameterizedTypes.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.class
index 4b92389..aff41ee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.class
index 965f434..9d2dfdd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.class
index 858b578..aea03cc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.class
index 32dd260..5889cfb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.class
index 47fc4ee..2fe1af2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.class
index 7d348e3..ca7be94 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.class
index 70c6730..16464e9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
index 1d1a5bb..7b28fe3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2016 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.class
index 13c65a5..b3d7533 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.class
index 7226c02..56ad0e9e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.class
index 2de7863..d735c1b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.class
index 481de62..a1a6139 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.class
index 4c70eff..efebc0e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.class
index 1d3838d..ce65f92 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.class
index f5521f9..b88626a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.class
index 5e52d65..8ff51fd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.class
index 5868dcb..c8404cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.class
index b6cd321..83bb3ae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.class
index f782c60..aa03cda 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.class
index 5464b82..c10ec52 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.class
index 3fee5bc..f19880f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.class
index d342f5b..cb12ab5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.class
index 60c81b1..99c94f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.class
index 01f17ae..5fdef82 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.class
index 3f8963c..a7da8ee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.class
index eeb2575..dc85ddf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.class
index cf9cae1..9071895 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.class
index 2ffe849..1cae996 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.class
index 631a454..d77b713 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.class
index 52d35de..66300d1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.class
index 849517b..323abf5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.class
index 6a25b23..fd5afcf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.class
index 5a204bf..de4389a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.class
index c0d9e0a..0becf0f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.class
index a0aaea7..34d3c91 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.class
index 3337321..beadc1a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.class
index dd60497..d0d7293 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.class
index 437e3eb..26e794e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter$AnonymousMemberFound.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter$AnonymousMemberFound.class
index 17968cf..5085dca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter$AnonymousMemberFound.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter$AnonymousMemberFound.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.class
index 1ee1850..720a8cc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1.class
index 8179799..f2e8f90 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1MethodVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1MethodVisitor.class
index 9ad3b6f..9a1ef84 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1MethodVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1MethodVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1TypeVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1TypeVisitor.class
index 7e21aac..79cb8d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1TypeVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$1TypeVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$LocalTypeKind.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$LocalTypeKind.class
index 1e941b2..01f9f55 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$LocalTypeKind.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass$LocalTypeKind.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.class
index 3013958..9b43827 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$Goal.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$Goal.class
index 51954e7..42305a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$Goal.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$Goal.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContext.class
index 7b6dbf8..62c8500 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$1.class
index 6b9fe5b..b013164 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$2.class
index 4c6d96f..f66e0ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector.class
index 7374678..53b7ec6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$ScanContextDetector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardParser.class
index 8b90d5c..4afa493 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardScanner.class
index 371291a..fd3fd5d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass$VanguardScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.class
index 61312db..6a02bed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.class
index fb8fa79..f444282 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$PrimaryRepairInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$PrimaryRepairInfo.class
index c017bf2..63d684a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$PrimaryRepairInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$PrimaryRepairInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$RepairCandidate.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$RepairCandidate.class
index f87a9d8..3e715c8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$RepairCandidate.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$RepairCandidate.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$SecondaryRepairInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$SecondaryRepairInfo.class
index 0d7702b..ba331cc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$SecondaryRepairInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$SecondaryRepairInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$StateInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$StateInfo.class
index 5b1b49b..ecaca4d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$StateInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser$StateInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.class
index 44f1e05..d7b3948 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream$Token.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream$Token.class
index 31615d9..80b1d35 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream$Token.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream$Token.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.class
index 48211ec..a2c54ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil$RangeResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil$RangeResult.class
index a32493c..fab99b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil$RangeResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil$RangeResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.class
index ef6826a..ce1bd1d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc
new file mode 100644
index 0000000..c2a638f
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc
new file mode 100644
index 0000000..87cad85
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc
new file mode 100644
index 0000000..c8241e8
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc
new file mode 100644
index 0000000..ab6b33e
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc
new file mode 100644
index 0000000..a416236
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc
new file mode 100644
index 0000000..5856a2a
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc
new file mode 100644
index 0000000..ab6b33e
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.class
index 8dfc167..2f7ab03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.class
index 24767d6..b88b8cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.class
index d088100..7fadaf8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.class
index 11f3f87..720322e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.class
index 741138e..d1619aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.class
index b3c08dc..4155eab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.class
index 7ed0ef4..3d7051f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.class
index 0d28914..f3580ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.class
index fd0565e..2828c91 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
index d1220d9..466b817 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 # 
 #
 # Contributors:
@@ -953,18 +956,19 @@
 1461 = Name of automatic module ''{0}'' is unstable, it is derived from the module''s file name.
 
 # Local-Variable Type Inference
-1500 = ''var'' is not allowed in a compound declaration
-1501 = ''var'' is not allowed as an element type of an array
-1502 = Declaration using ''var'' may not contain references to itself
-1503 = Cannot use ''var'' on variable without initializer
-1504 = Cannot infer type for local variable initialized to ''null''
-1505 = Variable initializer is ''void'' -- cannot infer variable type
+1500 = 'var' is not allowed in a compound declaration
+1501 = 'var' is not allowed as an element type of an array
+1502 = Declaration using 'var' may not contain references to itself
+1503 = Cannot use 'var' on variable without initializer
+1504 = Cannot infer type for local variable initialized to 'null'
+1505 = Variable initializer is 'void' -- cannot infer variable type
 1506 = Array initializer needs an explicit target-type
 1507 = Lambda expression needs an explicit target-type
 1508 = Method reference needs an explicit target-type
-1509 = ''var'' is not a valid type name
-1510 = ''var'' should not be used as an type name, since it is a reserved word from source level 10 on
-1511 = ''var'' is not allowed here
+1509 = 'var' is not a valid type name
+1510 = 'var' should not be used as an type name, since it is a reserved word from source level 10 on
+1511 = 'var' is not allowed here
+1512 = 'var' cannot be mixed with non-var parameters
 
 ### ELABORATIONS
 ## Access restrictions
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.class
index 135dae7..c3d4f00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.class
index 188f1ea..6ab362c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter$1.class
index 20c43b3..8ff457c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.class
index 6beebe7..08aed17 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.class
index 23ea7b2..44c9255 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.class
index b25011b..a7774aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.class
index cba5c80..1acbcc4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.class
index c095b60..4a09897 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.class
index a4c5327..d484232 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.class
index f87b007..1ee5125 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.class
index a9b2397..471e9bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.class
index c89cbab..6b818ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.class
index 7d74b64..271f38f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.class
index 48d5780..ae51feb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.class
index f85a075..bce89b2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$AbstractFileVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$AbstractFileVisitor.class
index fbe1244..a4e7c88 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$AbstractFileVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$AbstractFileVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$JrtFileVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$JrtFileVisitor.class
index a3e55b5..46c695a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$JrtFileVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil$JrtFileVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.class
index 7b79077..3a61ba3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$1.class
index dac6005..93f0fe4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$2.class
index abdc4d8..28a2433 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem.class
index c52bc5d..59dcf97 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/JrtFileSystem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.class
index ccdb576..69dead2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages$MessagesProperties.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages$MessagesProperties.class
index 08e4604..0108136 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages$MessagesProperties.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages$MessagesProperties.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.class
index ecddd8b..0889236 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector$1.class
index 2ddc8b0..9a18b9c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.class
index 79ed148..73aa055 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.class
index 20995b6..43fe17d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.class
index f7f00e0..a12a154 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.class
index 233c480..145eede 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.class
index a15876d..43f91a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting$1.class
index bb4cd45..c59ab44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.class
index a19c9eb..6755866 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.class
index bf51680..9ba8b10 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$1.class
index 742e860..c66032d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$Displayable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$Displayable.class
index 0ec27a3..236bf4b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$Displayable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util$Displayable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.class
index fb0b0a3..2d03d2a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.class
index 984531d..aafe878 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile$1.class
index 2fa9f22..f1d831d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.class
index eead301..1dcc9f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule$AutoModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule$AutoModule.class
index 7493b0f..ef821e9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule$AutoModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule$AutoModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.class
index 161ec83..c68c415 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.class
index 5d8739b..2177608 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Annotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Annotation.class
index f338067..904ab8d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Annotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Annotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.class
index 3003c56..334e322 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.class
index d33af7e..17216d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.class
index d2ce8ef..9a6c8f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.class
index ec73107..20d8dba 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.class
index 3bb4f72..5e746de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.class
index 8ebcab0..8c080e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.class
index 492e881..5744902 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.class
index abd59b9..a70cca7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.class
index 38c6435..a0a7180 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1.class
index 56067c9..dcee00c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1ParametersNameCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1ParametersNameCollector.class
index e801d9a..00d0ba3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1ParametersNameCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod$1ParametersNameCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.class
index 28a93b1..f725abc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.class
index 42e6484..edb1c5c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.class
index ec3fef7..89e178d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.class
index 46100a4..5a822f4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer$1.class
index 471bd60..3458b07 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer.class
index d6e5bf3..82ada55 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Buffer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.class
index c44dbbb..3111bde 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.class
index 1e9fbdb..82e2f19 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager$1.class
index fb6654d..17ab024 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.class
index a8c1d95..69cd9e1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.class
index 7a7d44f..7360b69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.class
index 77c033f..6f1d53f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.class
index b9e68eb..495d1a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile$1.class
index 129e8f2..a6e1155 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.class
index 08284b9..3e16133 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$1.class
index dff370d..a709020 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$2.class
index b2dbee3..c0eaa74 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.class
index 6b94cdb..a6dccb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.class
index db3180e..8d9083d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.class
index d387a41..22a2def 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.class
index 67a622f..5996b72 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.class
index ba06e46..a27e792 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$1.class
index 82a9519..323b0e4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$AssertionFailedException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$AssertionFailedException.class
index 01d0f9a..5f9676e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$AssertionFailedException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$AssertionFailedException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements.class
index 72ed71f..7f4fdd2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.class
index 8ee9ca2..11e1b6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.class
index 1d1ed6e..a52155a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.class
index d15790e..39426be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$1.class
index 996fe71..13a0e32 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$2.class
index d94a0f9..2399957 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$3.class
index 41ed570..431d956 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.class
index 76f198d..992ddbc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.class
index b44fd60..e4bc92c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder$1.class
index 3f7a65d..d995d47 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.class
index 196f4ff..fc3cb7d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor$1.class
index fbaf5b6..50228c1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.class
index eb9aaf7..062acf2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.class
index f5a0dd4..21b28a0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation$1.class
index 45a40ac..c03677b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.class
index 0e801f7..20c469e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.class
index 3167bbc..198eab1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.class
index d86ab1f..57f8820 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.class
index 44c53af..405fb6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.class
index 8abf636..2ca424d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.class
index b7b47eb..ba3a969 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.class
index 18ebebf..410ee85 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.class
index 4e61091..9ca6520 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.class
index c6c856f..a40727d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.class
index f088829..f524bdc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.class
index 2dc914f..63e4786 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.class
index d76d99c..e75de08 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.class
index 21f57ff..5b453aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.class
index 7449d98..6c9f7c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.class
index 0366357..167ede3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation$1.class
index 31b44b4..ee8186f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.class
index b3cabc4..f84bf64 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.class
index 0ddca23..1fbf364 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$1.class
index 3a7a75d..6f8324e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$RootInfos.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$RootInfos.class
index f2740c5..0c498f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$RootInfos.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState$RootInfos.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.class
index c968d7c..0756069 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1.class
index 5045112..adf9213 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1FoundRelevantDeltaException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1FoundRelevantDeltaException.class
index 964799b..bda117d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1FoundRelevantDeltaException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$1FoundRelevantDeltaException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$2.class
index 6476b5b..d800ced 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$3.class
index b32b454..a8a510a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$4.class
index d447a67..0d30b21 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$OutputsInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$OutputsInfo.class
index 89b5b42..d383dfc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$OutputsInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$OutputsInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$RootInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$RootInfo.class
index 987314a..eddb274 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$RootInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor$RootInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.class
index 35b9f5f..27e8865 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.class
index d1324e5..c762cbc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.class
index 92141b0..0cda918 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.class
index 2aec79f..1916ffe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.class
index 376eae3..7f89a3f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker$DirectoryNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker$DirectoryNode.class
index 9fe1b39..dc32ad9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker$DirectoryNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker$DirectoryNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.class
index 2308a6b..5862a39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.class
index 41e225e..474c9ca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager$RefreshJob.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager$RefreshJob.class
index 749e081..f58fc97 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager$RefreshJob.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager$RefreshJob.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.class
index 5650eb1..e5ed282 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.class
index a6e4601..3c000f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.class
index f6c1255..85e8ff4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.class
index 4dd2d65..3833690 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.class
index 6e31274..0057f49 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.class
index 62f0800..b580711 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.class
index 95d4571..93b0cc3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.class
index dc47550..eec0e39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.class
index eb1c606..0e72627 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.class
index 49bc238..8934fb9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.class
index d2a37eb..3cb9041 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Initializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Initializer.class
index 1d04fa7..fc8eaa5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Initializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Initializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.class
index 9e2638a..f0e7b01 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.class
index 6b6be2f..6c9fe73 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.class
index e2f7340..9bde9c2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.class
index fe54d1e..9e83765 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.class
index 66db809..90e8bb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.class
index 04c2a4b..202c279 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.class
index 8b760e1..a5dbad4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.class
index b83647a..23d760a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.class
index f8547e5..a1812f9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.class
index 5747dd1..802c61a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.class
index d428824..7e7497b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.class
index f151a39..aa246fa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.class
index a2e6209..c07a4e7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement$1NoResourceSchedulingRule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement$1NoResourceSchedulingRule.class
index 71e6295..d172d15 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement$1NoResourceSchedulingRule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement$1NoResourceSchedulingRule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.class
index c31593f..601baaa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta$Key.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta$Key.class
index bf585bb..823400f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta$Key.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta$Key.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.class
index 5e7bd2f..6e25f59 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder$ListItem.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder$ListItem.class
index 562dcc7..ea11964 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder$ListItem.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder$ListItem.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.class
index ad34f95..bec4df0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.class
index bc5144b..cb5cbbd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.class
index 870b896..af9638c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.class
index 6df56d4..0629bbf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.class
index 14da951..9b2ae5a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.class
index a71c20c..3046abe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$1.class
index 1fd6b9c..5d3592b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$10.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$10.class
index 3684e5e..73368a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$10.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$10.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$11.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$11.class
index 1c01822..51cd5d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$11.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$11.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$12.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$12.class
index 97e8cef..5aafe79 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$12.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$12.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$13.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$13.class
index 8939f16..4379d79 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$13.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$13.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$14.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$14.class
index 9753365..6f79912 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$14.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$14.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$15.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$15.class
index baff4eb..37f2d34 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$15.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$15.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$16.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$16.class
index d64e7f1..61b5572 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$16.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$16.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$17.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$17.class
index 7fb7c3a..cd31bdf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$17.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$17.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$18.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$18.class
index d2fe004..bfb71b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$18.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$18.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$19.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$19.class
index 0b0669a..ae4e55f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$19.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$19.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$2.class
index 2b50cae..ea0f361 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20$1.class
index 58b18e9..c416611 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20.class
index 1667df8..3bd8840 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$20.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$3.class
index cfac4e5..81807b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$4.class
index 00b6ce0..8c72726 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$5.class
index 36c74d7..0d7f707 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$6.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$6.class
index 90fd35e..9d9b700 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$6.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$6.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$7.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$7.class
index 25bae2b..0bd9c90 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$7.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$7.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$8.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$8.class
index dc71908..c597933 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$8.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$8.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$9.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$9.class
index cccbe27..0ae8318 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$9.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$9.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ArchiveValidity.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ArchiveValidity.class
index 68edccd..c316939 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ArchiveValidity.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ArchiveValidity.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$1.class
index c618b5a..0f646a4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2.class
index d534092..4033262 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants.class
index d101e4b..9280646 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$CompilationParticipants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$EclipsePreferencesListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$EclipsePreferencesListener.class
index 0c40b20..fc79fc5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$EclipsePreferencesListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$EclipsePreferencesListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$InvalidArchiveInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$InvalidArchiveInfo.class
index 1fdd4c3..db3d66e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$InvalidArchiveInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$InvalidArchiveInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo.class
index c029532..2569b5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerWorkingCopyInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerWorkingCopyInfo.class
index 9980235..15e2836 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerWorkingCopyInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PerWorkingCopyInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PersistedClasspathContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PersistedClasspathContainer.class
index e130cb6..65089be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PersistedClasspathContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$PersistedClasspathContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersLoadHelper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersLoadHelper.class
index 3da242e..d1fe9aa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersLoadHelper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersLoadHelper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersSaveHelper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersSaveHelper.class
index 9ab957d..733dcb2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersSaveHelper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$VariablesAndContainersSaveHelper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ZipCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ZipCache.class
index dad6d3b..4927d51 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ZipCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager$ZipCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.class
index 78869fd..add71b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation$IPostAction.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation$IPostAction.class
index b9dbf32..016ecd9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation$IPostAction.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation$IPostAction.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.class
index 247405e..5414e0a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.class
index a7cfa59..9e7a0a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$1.class
index f768694..1f32b70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$2.class
index 201440e..43fcf83 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$3.class
index 260bab5..867a624 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$4.class
index c44ffed..3568a85 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ClasspathResolutionBreakpointListener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ClasspathResolutionBreakpointListener.class
index e508f7c..d062fd6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ClasspathResolutionBreakpointListener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ClasspathResolutionBreakpointListener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$JImageModuleFragmentBridge.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$JImageModuleFragmentBridge.class
index c7289a7..e1ff661 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$JImageModuleFragmentBridge.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$JImageModuleFragmentBridge.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ModuleLookup.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ModuleLookup.class
index cda869b..23896cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ModuleLookup.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ModuleLookup.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ResolvedClasspath.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ResolvedClasspath.class
index 2c9328d..0a0f252 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ResolvedClasspath.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject$ResolvedClasspath.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.class
index 2db76e8..a061a13 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo$ProjectCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo$ProjectCache.class
index 6d9b2f9..a63cf9f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo$ProjectCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo$ProjectCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.class
index a17ba62..48c0cee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.class
index 0ec260c..01d5e7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.class
index e6c3521..1bddf16 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot$1.class
index 52369de..25ad19e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.class
index c46b066..a313050 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator$LRUEnumeratorElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator$LRUEnumeratorElement.class
index 07477a7..9bd1042 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator$LRUEnumeratorElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator$LRUEnumeratorElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.class
index 31b14d2..0ced5ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression$1.class
index 933771f..4c0f1c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.class
index e517599..3f1dca7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.class
index e027010..b59df50 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.class
index c91ad73..11bc212 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable$1LocalVarAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable$1LocalVarAnnotation.class
index 46f136a..34a75e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable$1LocalVarAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable$1LocalVarAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.class
index e586fe8..b9da2ea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Member.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Member.class
index 8a9d5ab..fa75757 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Member.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Member.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.class
index c37aafb..cac72cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.class
index 4de9ca5..5f23626 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.class
index f58614f..23df60b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.class
index 0cf6d34..52d822c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ModuleReferenceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ModuleReferenceInfo.class
index 0f1ea53..ed03468 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ModuleReferenceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ModuleReferenceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$PackageExportInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$PackageExportInfo.class
index b7064af..a01b463 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$PackageExportInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$PackageExportInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ServiceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ServiceInfo.class
index 848fd99..7a0b867 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ServiceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo$ServiceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.class
index 0a3bd51..34b1ad9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.class
index 3eb2465..059b571 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.class
index 5e370e7..d2ccc74 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager$IPrefixMatcherCharArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager$IPrefixMatcherCharArray.class
index e1626b6..7c940ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager$IPrefixMatcherCharArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager$IPrefixMatcherCharArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.class
index c3d70e6..b8b3d7e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.class
index 049e8ba..c0b298d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.class
index 07ee1e6..62f2281 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation$1.class
index 29a5443..0ccca53 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.class
index 925cae3..dc68b66 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.class
index 8b4ac22..772f3f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.class
index d69626c..11e4847 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$1.class
index 62d52a9..e498e29 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Answer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Answer.class
index 0f955de..e77a8f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Answer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Answer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$IPrefixMatcherCharArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$IPrefixMatcherCharArray.class
index 409d810..fb48d03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$IPrefixMatcherCharArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$IPrefixMatcherCharArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Selector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Selector.class
index 7d15ad0..49a08a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Selector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup$Selector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.class
index 28a345d..78cffcd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember$1TypeResolveRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember$1TypeResolveRequestor.class
index 29097bc..3512dea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember$1TypeResolveRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember$1TypeResolveRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.class
index c1dfc9b..2296255 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.class
index d02f0a5..61e9801 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.class
index 7f1f01f..0e1f34f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Openable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Openable.class
index 62bd963..9a6da08 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Openable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Openable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.class
index e79966c..5aae58c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache$1Temp.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache$1Temp.class
index 509e7de..63b47ca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache$1Temp.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache$1Temp.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.class
index f0beb3d..ab41937 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.class
index fa0fb8c..f007f74 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.class
index 4b3ef05..57423a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.class
index 3a2c54e..2fbb78f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.class
index deb37e3..f278482 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.class
index f8bd6e2..77ae5fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.class
index 16fe558..9d4b6df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation$1.class
index 5ddb7f0..85ba0d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.class
index a3300bc..d040f24 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region$Node.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region$Node.class
index 7cea228..1700632 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region$Node.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region$Node.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region.class
index ca026d5..8def652 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/Region.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.class
index 5f9a7b8..d767190 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.class
index a750d10..eb4d9c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.class
index 78c32c0..52834e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.class
index 9e64029..ab054c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.class
index 9b28fca..f25c3b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.class
index 374b1f2..fe07d0e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.class
index 60c9a93..41b56bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.class
index 3f3c76f..9d0137e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.class
index 8c4c801..920dc83 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$1.class
index 3d9bf5f..f627a4e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$2.class
index a72d839..bd9f1bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$3.class
index c5b758a..a71dfed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$4.class
index 013f8df..faaf09e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$5.class
index 7af4daa..1ed1443 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$6.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$6.class
index 64d431a..660d643 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$6.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$6.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$7.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$7.class
index 591c5ec..574e3bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$7.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment$7.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.class
index ffc5790..adfe311 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.class
index 33393d1..d050683 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.class
index b3ad903..8ff8654 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.class
index 8d042b5..957b68c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$1.class
index 8782743..242309c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$2.class
index 923af02..68042ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.class
index c4e8e14..195948d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.class
index 8a9df28..c1f2c34 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.class
index f2a1e50..d3771d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.class
index 8cfe1db..e6e5fc4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$1.class
index 996df9e..21296e3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$2.class
index 2c196a9..287fec9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.class
index ded078a..71f4252 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.class
index e5fb901..b48749f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.class
index b65139d..fc976c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.class
index cd22a9d..58222f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceField.class
index 519a42c..86dd879 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.class
index fa22d50..8b97e44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.class
index 3290b83..2553982 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$1.class
index 0f9d32f..c8195eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$JrtPackageNamesAdderVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$JrtPackageNamesAdderVisitor.class
index 6e44546..8e4db6c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$JrtPackageNamesAdderVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$JrtPackageNamesAdderVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$LocalVariableElementKey.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$LocalVariableElementKey.class
index 0d7e30a..dd96ed0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$LocalVariableElementKey.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper$LocalVariableElementKey.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.class
index faad1fe..3b8657d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.class
index 60893be..9977c7d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.class
index 8f6d9ba..297e6bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.class
index 889e41c..6a78333 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.class
index fbc13c3..911b875 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.class
index c63a1da..0951e4a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.class
index 869e181..a6e5c3d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.class
index b3705a2..6c3dd0e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceType.class
index b89c32e..eb7f02c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.class
index c840ce5..e3641a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.class
index d360748..4067391 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.class
index 07b03dd..c893b71 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.class
index 2407c4e..a35e619 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.class
index 510434b..6dd7f54 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.class
index 3c384b4..5b0ae74 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.class
index 7285ca0..61c9ebd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.class
index 2ca4345..52e9ca8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.class
index 3813b78..1d41423 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.class
index 26bab3d..2e8c5a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.class
index 3d4356a..5335fff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder$1.class
index f7f9fa7..d6bd5f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.class
index 049f2fe..2b4a327 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.class
index aaa61c6..810335c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$1.class
index bef15d5..354d592 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$2.class
index 274af54..47013f0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$3.class
index feba02c..b9ebe8f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.class
index 96e1fca..8c29e63 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.class
index ff72ec1..6232c65 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.class
index 07a24a6..d8b0e62 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.class
index e89544e..91236b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar$PackageCacheEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar$PackageCacheEntry.class
index a22059a..738a42e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar$PackageCacheEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar$PackageCacheEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.class
index 6914851..ef1895b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$1.class
index 7e60c65..cd46bf1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$2.class
index 2108d25..8015f62 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.class
index a93b768..5476f3c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.class
index 6409192..4124f8c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.class
index 6a183c0..e07d6b5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar$1.class
new file mode 100644
index 0000000..ea18b7f
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.class
new file mode 100644
index 0000000..22fb48d
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.class
index 9e1574f..911e431 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.class
index e7ae590..3577ae0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.class
index 3d5cdd6..f9f1855 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.class
index 1b70f74..67522e9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.class
index 5399439..c3d095e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.class
index 3bcbc38..cf8385e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.class
index 2324c35..428297f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder$BytecodeCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder$BytecodeCollector.class
index a63f483..3657d76 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder$BytecodeCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder$BytecodeCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.class
index 48f68c8..b6bec69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry$Multi.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry$Multi.class
index dba4f22..736c03e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry$Multi.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry$Multi.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.class
index 23afcd6..ebefa78 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.class
index 2ff36ba..41e94b4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.class
index d8bde6b..0197fd1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.class
index cddae31..21eecf1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.class
index c2c0029..9995f9c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.class
index 33f640f..98a571e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.class
index 4f1409f..d196078 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/State.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/State.class
index caf4467..023be37 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/State.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/State.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.class
index e729391..e4e782b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.class
index 842e02d..241d872 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.class
index ee529ae..5385115 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.class
index 663ee4b..c4f2c72 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$IASTRewriteAnalyzerFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$IASTRewriteAnalyzerFactory.class
index 234a7ec..42e6f62 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$IASTRewriteAnalyzerFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$IASTRewriteAnalyzerFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ListRewriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ListRewriter.class
index 02a2dc2..3f74cce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ListRewriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ListRewriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ModifierRewriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ModifierRewriter.class
index a36ce7f..b153405 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ModifierRewriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ModifierRewriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ParagraphListRewriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ParagraphListRewriter.class
index 5ffdc26..19d2288 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ParagraphListRewriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$ParagraphListRewriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$SwitchListRewriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$SwitchListRewriter.class
index a420faf..eecab9e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$SwitchListRewriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer$SwitchListRewriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.class
index bfbed0f..15482e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.class
index 087faae..cdb2f05 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$1.class
index 4e6d206..a6b31fc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockContext.class
index 1ca7c0d..05938e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefix.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefix.class
index 01a7521..5d16c17 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefix.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefix.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefixSuffix.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefixSuffix.class
index da2dc4e..70db9a5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefixSuffix.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$BlockFormattingPrefixSuffix.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ConstPrefix.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ConstPrefix.class
index fa8f4f9..a92c6ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ConstPrefix.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ConstPrefix.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ExtendedFlattener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ExtendedFlattener.class
index 8e86d56..a51c4cd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ExtendedFlattener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$ExtendedFlattener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$FormattingPrefix.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$FormattingPrefix.class
index bb47dfd..bc56174 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$FormattingPrefix.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$FormattingPrefix.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$NodeMarker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$NodeMarker.class
index a189c21..d2151e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$NodeMarker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$NodeMarker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$Prefix.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$Prefix.class
index bedf039..d77ad30 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$Prefix.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter$Prefix.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.class
index 798f74d..1ce9915 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.class
index 766c81b..d44196c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$1.class
index 2211727..f9e6c34 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$2.class
index 441a141..602c5e3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.class
index 0c29a4f..e836f77 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.class
index 14b8e9f..76a3545 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$CopyPlaceholderData.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$CopyPlaceholderData.class
index 0a81c69..c247f6c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$CopyPlaceholderData.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$CopyPlaceholderData.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$PlaceholderData.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$PlaceholderData.class
index edb41c3..290ddc7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$PlaceholderData.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$PlaceholderData.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$StringPlaceholderData.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$StringPlaceholderData.class
index 2696575..452535d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$StringPlaceholderData.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore$StringPlaceholderData.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.class
index 8b239c5..dc991d0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.class
index d0abdd8..ffb71d9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.class
index 77895a2..1473e9e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$CopySourceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$CopySourceInfo.class
index d2bc7d8..c301f1c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$CopySourceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$CopySourceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$EventHolder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$EventHolder.class
index 2e4e273..87a6dd5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$EventHolder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$EventHolder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$INodePropertyMapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$INodePropertyMapper.class
index bc6c7f5..d6680ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$INodePropertyMapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$INodePropertyMapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$NodeRangeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$NodeRangeInfo.class
index fae9aa4..950e06f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$NodeRangeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$NodeRangeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$ParentIterator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$ParentIterator.class
index 3d0741d..bf2bea4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$ParentIterator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$ParentIterator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$PropertyLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$PropertyLocation.class
index d02e5f7..610895f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$PropertyLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore$PropertyLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.class
index feb1435..a228c11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.class
index 57657bf..871b0a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.class
index ed5509b..1511c10 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.class
index 15ad25b..76f13dd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier$Conflicts.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier$Conflicts.class
index f6944ab..3e0deae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier$Conflicts.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier$Conflicts.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.class
index 299ed6c..fd7347a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.class
index 3256de5..e4274eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.class
index 2319572..a338b2d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.class
index fc5d30c..5548e75 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator$1.class
index 47ff6c7..22e5b4b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.class
index 424f1f0..d0c048d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.class
index 9c39f76..942a531 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$1.class
index 6751257..a2b5c53 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$ImportEdits.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$ImportEdits.class
index 1d7899d..c4e7a01 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$ImportEdits.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$ImportEdits.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$OriginalImportsCursor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$OriginalImportsCursor.class
index 1e2f647..2ac16e2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$OriginalImportsCursor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor$OriginalImportsCursor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.class
index ca61ea4..33aad5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.class
index 4ea3201..2791c1e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$ImportGroup.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$ImportGroup.class
index e680961..e802d07 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$ImportGroup.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$ImportGroup.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$IndexedImportGroups.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$IndexedImportGroups.class
index 1958191..2e62842 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$IndexedImportGroups.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator$IndexedImportGroups.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.class
index 35dabe7..6aa49b5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.class
index 985a620..2215e58 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer$RewriteResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer$RewriteResult.class
index 6803aec..2910121 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer$RewriteResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer$RewriteResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.class
index 97ad2bc..d4941c9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$Builder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$Builder.class
index e329396..52e6560 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$Builder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$Builder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$1.class
index b0c2427..2ee848b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$2.class
index 129db73..db2bfd4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification.class
index ef0a855..e18f224 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImplicitImportIdentification.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$1.class
index 0c09735..0deb3e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$2.class
index c9cbae8..52b6f11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting.class
index 5d86a27..f318ed8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$ImportContainerSorting.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$1.class
index db9f856..da3e654 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$2.class
index a5e802c..701688d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling.class
index 9945fe4..e625af5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration$OriginalImportHandling.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.class
index 67bea93..571f559 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.class
index 5377c58..faccc18 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.class
index c325448..9ada1ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.class
index aadf128..4c41fe3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.class
index f3ac80e..e53a3c1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder$AdjacentImports.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder$AdjacentImports.class
index 582787c..f8d03a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder$AdjacentImports.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder$AdjacentImports.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.class
index 385bf65..c0d8ed3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.class
index 4b18012..0f90a1f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.class
index 52ddc6e..19db007 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.class
index 4815b67..6ff9f60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.class
index ad9db88..efc3260 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.class
index 3823696..ba9397e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.class
index 6101107..92ab418 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.class
index bb6c03d..afb996d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder$ConflictAccumulatingTypeRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder$ConflictAccumulatingTypeRequestor.class
index 1ee8d9d..222848e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder$ConflictAccumulatingTypeRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder$ConflictAccumulatingTypeRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.class
index ab05331..38aeb0c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper$1.class
index 9c8daa2..7dcfda5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.class
index 597dd33..021d330 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.class
index fe50d49..e4d741f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.class
index 3fd8f75..6456411 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.class
index 7d24e25..022defe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.class
index a474a6a..1ca7766 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.class
index 9f14b14..7be3f3d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder$1.class
index aedc92f..fb1a94d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.class
index a089640..1c961ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.class
index b580c2f..8cfd2b9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.class
index 90c3e05..a1c143c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1.class
index 3e5ab87..1b52f4f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1PathCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1PathCollector.class
index b69001a..c13829d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1PathCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$1PathCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$2.class
index 529cd2c..1067380 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$Queue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$Queue.class
index 9f0f35d..159a35e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$Queue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder$Queue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.class
index 1c62b3c..84f493c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.class
index 0227195..71e6db0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.class
index 48ff9d6..e97cb8e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy$1.class
index 18fc6d1..875012c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.class
index b28dd3a..71095be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex$IntList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex$IntList.class
index b0200a6..3d253ea 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex$IntList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex$IntList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.class
index cc8ccef..256dbc7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.class
index cdca19d..8f87be6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.class
index a9c8884..9168b4a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/Index.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/Index.class
index cbe66f5..ee9da38 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/Index.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/Index.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.class
index 95fdd12..9c3e303 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.class
index 4f313e9..59fa9a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.class
index da1d049..368d436 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.class
index 5674956..b443318 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.class
index 1384ba5..4e30bc8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.class
index 0815053..ed58a7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.class
index 125d555..667e7f7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.class
index b2704bc..adbed67 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.class
index ab3ac34..de01ddf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.class
index c5ed5e9..f250bce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.class
index 9ae26f0..c1e28a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.class
index c7694e1..05c1c44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.class
index e39f33b..76ad8ad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.class
index da937f0..dba8591 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.class
index b5da7b7..4ee65be 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.class
index 7010382..616f119 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.class
index 8767c6e..5595ac9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.class
index 58ee830..1f55639 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.class
index d284eb0..5d6a243 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.class
index 459a6df..f6379ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.class
index 4fe46fa..d65a2d4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.class
index b893440..d8d2c60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.class
index 124f5ec..2854438 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.class
index 7df5395..3fad931 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.class
index cb853b8..4f44b5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.class
index b6967a3..b4dccae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$1.class
index 39166a7..a18dbbb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$DebugLockInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$DebugLockInfo.class
index 27a7eeb..37ae739 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$DebugLockInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd$DebugLockInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.class
index d02e6b7..3fba64b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$1.class
index 94b09d7..72510d4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$2.class
index b66738c..9dbd119 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$3.class
index 2cd4112..7137fd9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$ILinkedListVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$ILinkedListVisitor.class
index 7088232..29a89fa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$ILinkedListVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList$ILinkedListVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.class
index 06e6283..3ea0601 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.class
index f9846b5..8c2cad8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.class
index bdeff2b..7c4c520 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList$ILinkedListVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList$ILinkedListVisitor.class
index 229dbbc..5ebc453 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList$ILinkedListVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList$ILinkedListVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.class
index c212fa3..d1a6be7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.class
index 57403b6..1c596b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.class
index 1b0b26e..21832ce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer$1.class
index dcd8506..67e5eee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.class
index 7e83016..cb5583c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$1.class
index 5041853..b9e66c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$2.class
index 02ad242..a64599e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$3.class
index ee07eb7..d71bd58 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.class
index a1f344c..b7d2d1d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$GrowableBlockHeader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$GrowableBlockHeader.class
index 6c0fb7b..9dedea1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$GrowableBlockHeader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$GrowableBlockHeader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$MetaBlockHeader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$MetaBlockHeader.class
index 73fd9c8..9006e4f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$MetaBlockHeader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray$MetaBlockHeader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.class
index 9259fd0..fc396bf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.class
index 6dd64a2..bfa7bf9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$1.class
index 2d79781..ee2152c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTNode.class
index 602f91a..c55372b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTreeKeyNotFoundException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTreeKeyNotFoundException.class
index d641a3f..9e726f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTreeKeyNotFoundException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$BTreeKeyNotFoundException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$IBTreeVisitor2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$IBTreeVisitor2.class
index 43033fc..f789b03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$IBTreeVisitor2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$IBTreeVisitor2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$InvariantsChecker.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$InvariantsChecker.class
index 6b7c8b4..002c5cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$InvariantsChecker.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree$InvariantsChecker.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.class
index 39e173a..f646ff5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.class
index da96e66..782a338 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.class
index 2be11e0..583d3ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$SleepCallback.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$SleepCallback.class
index 7c6fb30..369ea4a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$SleepCallback.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$SleepCallback.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$WriteCallback.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$WriteCallback.class
index 67f8599..43794ae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$WriteCallback.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter$WriteCallback.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.class
index 619075e..ce73627 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$1.class
index e6113ee..41133fe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$1.class
index 04160d0..f6a2391 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$2.class
index af052c8..441c595 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$3.class
index 192d0e0..8b354f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty.class
index 1c03450..81e614b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties$DBProperty.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.class
index 193ae31..5729ea1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.class
index cf001f9..2c7c2f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$ChunkStats.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$ChunkStats.class
index f12155c..54619bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$ChunkStats.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$ChunkStats.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$IORunnable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$IORunnable.class
index a26a74b..a32de89 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$IORunnable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database$IORunnable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.class
index 6584e63..0a004e3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.class
index 2f2409f..1cf5462 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.class
index f3c92fe..30a5d57 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.class
index 2f78efc..a623d0a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.class
index b73c111..145a899 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.class
index 5403896..b22ee7f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.class
index 104e2aa..e7a0f53 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$1.class
index 5f5379f..867e100 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$PoolStats.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$PoolStats.class
index a9a8713..5ac9d60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$PoolStats.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats$PoolStats.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.class
index e23d1c3..18ba4bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryAccessLog.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryAccessLog.class
index 6c6fceb..9aa2b70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryAccessLog.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryAccessLog.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryOperation.class
index 28ffa57..502a6ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$MemoryOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$Tag.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$Tag.class
index b41cb38..0b6afb8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$Tag.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog$Tag.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.class
index 3d23167..622ffdc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet$NodeType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet$NodeType.class
index 0dea0c9..b548f7a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet$NodeType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet$NodeType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.class
index 82c2087..419087a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.class
index d9d51bb..1237163 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.class
index 8c1986a..72dd430 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.class
index 2c3f774..b7608bd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.class
index a54e9c0..d4700a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.class
index b44bcc2..8eee217 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.class
index a312896..62363f4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.class
index 1243276..86804bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.class
index f25eff8..7a1f472 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.class
index ae119dd..6327454 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList$BlockHeader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList$BlockHeader.class
index 5576c09..307ecab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList$BlockHeader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList$BlockHeader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.class
index 433cea5..5c22599 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.class
index 8fb02ba..09a6504 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.class
index 505109e..08e5f60 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$1.class
index 29e6101..394827a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$Visitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$Visitor.class
index 7ef726a..a3ab8f6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$Visitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany$Visitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.class
index 828f437..4871948 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.class
index c2275b5..16c9031 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.class
index 81f70e9..6728054 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$1.class
index 3f495a2..031c526 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$2.class
index 8645000..b3fdc81 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$3.class
index 0a70d82..c6011a6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$4.class
index 1e095a0..c9e0a15 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$5.class
index e4e8e43..ab12603 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$6.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$6.class
index 9795987..df13953 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$6.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$6.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$7.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$7.class
index 1cedba2..b9224c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$7.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$7.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$IResultRank.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$IResultRank.class
index f288b36..15cd09c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$IResultRank.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$IResultRank.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteria.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteria.class
index 1b324f6..061da37 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteria.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteria.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteriaToBtreeVisitorAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteriaToBtreeVisitorAdapter.class
index 473fee2..a96d7cb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteriaToBtreeVisitorAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$SearchCriteriaToBtreeVisitorAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$Visitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$Visitor.class
index 6df4701..373831e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$Visitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex$Visitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.class
index 4d9f11c..21c49f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.class
index 3c09b0e..e18e8eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.class
index 27f3127..ad9e73e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.class
index 0f61436..86609c2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.class
index e924b20..310fd8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.class
index bbae76e..7b42074 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.class
index 935e744..7ba6d03 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$1.class
index 6a558fb..6b12a6f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$DeletionSemantics.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$DeletionSemantics.class
index 6788814..0ca8142 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$DeletionSemantics.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef$DeletionSemantics.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.class
index dfb6877..8b41cef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter$TypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter$TypeParameter.class
index de5f4ef..0362840 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter$TypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter$TypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.class
index 000dd7b..bdf390b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.class
index 55d1016..a62b03d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.class
index 7016564..2497298 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.class
index 62e393d..635ec31 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester$TypeAnnotationWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester$TypeAnnotationWrapper.class
index 02ea5d2..67932c8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester$TypeAnnotationWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester$TypeAnnotationWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.class
index 7498066..721409b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$1.class
index e77c807..4dbd5f3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$Listener.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$Listener.class
index da4dfec..7f6e427 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$Listener.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer$Listener.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.class
index 147670d..870abff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.class
index bebfa4f..acc053f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.class
index b6768d4..25d83ef 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.class
index b77c850..dbf1e3a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.class
index 7e5a2b3..1e97337 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.class
index afdd942..8b0d884 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint$FingerprintTestResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint$FingerprintTestResult.class
index d66b278..41e9c99 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint$FingerprintTestResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint$FingerprintTestResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.class
index 1b5ad94..d030e8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.class
index bb387e4..7d39e9c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$1.class
index a106062..de631bc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$BestResourceFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$BestResourceFile.class
index 41309d1..8c37cce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$BestResourceFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex$BestResourceFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.class
index 8e5dd18..878875b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.class
index b7d12c1..976af91 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.class
index 411923e..7ce9280 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.class
index 35c05fc..4db5b9c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.class
index 70b3361..4af980e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.class
index 900a903..65518b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.class
index bac7146..721dd36 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.class
index 80054f8..b7d1c35 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.class
index f44ec81..e15994c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.class
index e2ec3a8..e1d2ac5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.class
index af91604..2cfbb08 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.class
index 3930747..b6c9a26 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.class
index 031050e..63c4de9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.class
index 6fff824..a0640c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.class
index 229aee4..2bf0561 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.class
index d61b92c..ffcef48 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.class
index dcaf236..099c0e9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.class
index 030228a..fede6e8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.class
index e2ef776..e284dc9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.class
index 082ed3e..99ac47e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.class
index a6fa36b..84715d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.class
index 0ef95f9..0aa6c5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.class
index 65fd012..4ed174f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.class
index eaff7b3..ecc5be4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$1.class
index dba297b..96b893a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$2.class
index 9e80bd9..a3d68ba 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.class
index 3586ce3..5ffd995 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.class
index f6613b3..56cf6ae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.class
index cd53368..82f4cbc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.class
index 1dfa843..0511c49 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.class
index 5e6e8c8..aa0628a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.class
index 5aad13a..ab1a9de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.class
index 6b3ff68..431de2f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.class
index 366bbaf..f71899e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.class
index a2f58a4..8d96dba 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.class
index 7b8083c..f1cdc70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.class
index a2ffce6..f4afa17 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.class
index 372c72a..5a35262 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.class
index 3a5c926..3f2da3d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$FixedSizeTagHandler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$FixedSizeTagHandler.class
index a74bebe..0aa32df 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$FixedSizeTagHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$FixedSizeTagHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$TagHandler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$TagHandler.class
index 083ba1c..221547e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$TagHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader$TagHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.class
index 7392591..0d9173f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef$TypeSupplier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef$TypeSupplier.class
index 946dd4f..86957d2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef$TypeSupplier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef$TypeSupplier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.class
index 05c9b87..c62ab5a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.class
index 7cbc657..6d295fc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.class
index 646ebcf..c3b3a11 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.class
index a3c0635..96848fa 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory$NotInIndexException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory$NotInIndexException.class
index ee25317..4f6f062 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory$NotInIndexException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory$NotInIndexException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.class
index 261d6c5..2fdb700 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.class
index 30f837c..ffa0f6e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.class
index 28c0e1d..5c7025d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.class
index 6abdc1f..0880a01 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.class
index 0f44f60..c1c1b7c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType$1.class
index 05b7e93..b3ef5fd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.class
index ec18239..d2239b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.class
index ba9fc5a..2b5de04 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.class
index fa6cdae..fc84398 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.class
index 122c2c2..27ab58b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap$Key.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap$Key.class
index 58f0a8f..1ace502 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap$Key.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap$Key.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.class
index 1280327..acdd05f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.class
index ff8d152..8eab50b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.class
index 5720439..693fd9d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$DeviceNode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$DeviceNode.class
index 2016b52..593a299 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$DeviceNode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$DeviceNode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$Node.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$Node.class
index c5806d0..187fff1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$Node.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap$Node.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.class
index b8da257..e4d25f2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.class
index a210309..d9e415f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.class
index e6b31a1..58f2c7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1.class
index d7c38e9..ddc2757 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllConstructorDeclarationsVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllConstructorDeclarationsVisitor.class
index 81e6a4c..c1a5367 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllConstructorDeclarationsVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllConstructorDeclarationsVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor$TypeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor$TypeInfo.class
index 00b934e..40c6328 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor$TypeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor$TypeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor.class
index 5e9b55b..a75330c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllMethodDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllTypeDeclarationsVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllTypeDeclarationsVisitor.class
index 34ef7a5..1184761 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllTypeDeclarationsVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$1AllTypeDeclarationsVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2.class
index 9974697..49404e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor$TypeInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor$TypeInfo.class
index 28f19ba..f192301 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor$TypeInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor$TypeInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor.class
index dbbf2ac..0624772 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllMethodDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllTypeDeclarationsVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllTypeDeclarationsVisitor.class
index b2f4636..35b1346 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllTypeDeclarationsVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$2AllTypeDeclarationsVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$3.class
index f8e9acf..6873ca5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$4.class
index 1f792e0..47634e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$5.class
index 1a64ed4..34a485c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$6.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$6.class
index d6041fc..da9a9a9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$6.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine$6.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.class
index 467cea1..1015098 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.class
index f5308ad..a4b6156 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.class
index 55beb58..cfaa572 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.class
index d589dc7..941dbc1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.class
index d0da288..581e757 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.class
index 1630cdd..44a3df3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.class
index ed38dc2..4a027a1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.class
index 3c2d63a..c6b2574 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.class
index d89f11f..7e20979 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.class
index a160024..29e67c2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.class
index 7869294..189659f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.class
index cc14cdd..b08e312 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.class
index b852138..253de62 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.class
index ae46a7c..6063453 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.class
index a5e874e..cfc9c8c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.class
index e7f3906..9b301a4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.class
index cff7990..db03d20 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.class
index 56910ea..483e64d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.class
index 8fdb567..49cd929 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.class
index 6c5cff2..aadd176 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.class
index 74f1f7d..3068f69 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.class
index 7694d1a..799fe4e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.class
index 577f4a9..fef3509 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.class
index 633c902..ed7828e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$1.class
index 7966da0..56326c1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$2.class
index 0fd4293..578836b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.class
index c4101f9..c4cfd44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.class
index 9c447eb..318952c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$FILE_INDEX_STATE.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$FILE_INDEX_STATE.class
index 7f3f132..a7fa6b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$FILE_INDEX_STATE.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$FILE_INDEX_STATE.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtIndexer.class
index 1e8df5a..6c64ab9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtTraverser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtTraverser.class
index 5a59419..25ac620 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtTraverser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex$JrtTraverser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.class
index 2fe963b..a4544c1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.class
index ad0aca5..dd995b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.class
index c07b18c..bc9b9b8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.class
index cd65168..a1b1f31 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.class
index 68685c6..997bc68 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$1.class
index 0cbcba5..4ec78d7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$2.class
index 165ccc3..91e5b39 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.class
index 5443b7d..ad457bc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$1.class
index dd38f2d..338fe0f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$2.class
index ff2539a..dcaedc8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.class
index 5717f72..c169e75 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager$1.class
index 908d3c9..dc0a831 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.class
index 4f03719..71c891f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.class
index 6423680..89c3d44 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.class
index 6ebeaab..dab0d77 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.class
index 05e62c0..8e9fcbe 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.class
index 92b1f74..a04976c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.class
index 3ce846f..c76e711 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.class
index 7d29ea1..c847e70 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.class
index 18b63eb..0aecf00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.class
index f41a8fc..b743996 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.class
index a9b7acc..3f39cae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.class
index 32a79c0..c226bb1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.class
index eaeb3f0..5513472 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.class
index 2ff123f..a4e412b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.class
index 0b6ac8d..8e66028 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.class
index 7842de1..424f7a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.class
index 0f97d14..4da966e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.class
index fa390d7..50f7267 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.class
index 06bf620..653c535 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.class
index 75f3e43..43787f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.class
index d5b3ab0..95aec29 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.class
index e32bdb0..9ba8bcb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.class
index af05a0f..038da7a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.class
index c341094..66b373a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.class
index 3a000bc..903935d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment$1.class
index 9b423c1..a522b2d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.class
index 0966234..3167656 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.class
index 9b7daa0..43132c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.class
index 3898d0b..0de4ca3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.class
index 46ad09e..0dca72f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.class
index 4feb2f7..e08798f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.class
index 962672d..91af3dd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$1.class
index 1eb2096..23096b6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WorkingCopyDocument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WorkingCopyDocument.class
index 72ca2f2..4cc4bd5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WorkingCopyDocument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WorkingCopyDocument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WrappedCoreException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WrappedCoreException.class
index 4b68787..67407b1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WrappedCoreException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator$WrappedCoreException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.class
index 3798bb7..57fd625 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassAndMethodDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassAndMethodDeclarationVisitor.class
index 9525088..3cba079 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassAndMethodDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassAndMethodDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassButNoMethodDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassButNoMethodDeclarationVisitor.class
index 66b94f1..1059338 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassButNoMethodDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$ClassButNoMethodDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$MethodButNoClassDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$MethodButNoClassDeclarationVisitor.class
index f10c7e2..cd97038 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$MethodButNoClassDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$MethodButNoClassDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$NoClassNoMethodDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$NoClassNoMethodDeclarationVisitor.class
index cd9e8fe..2bf852b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$NoClassNoMethodDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser$NoClassNoMethodDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.class
index 96a3e4c..03c0c8a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet$1.class
index 44af177..2e026bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.class
index 81cb5d7..7782f2d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.class
index 472305a..e74096f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.class
index 3fbefa6..1fd73f1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.class
index ee9f8b5..cd8f159 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.class
index a4e4b52..edcee87 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.class
index db67227..4776b01 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.class
index 0fec36f..352a859 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.class
index 0352c59..8cf5518 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.class
index 4f49415..f4f3aac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.class
index be04c73..a1351dd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.class
index b5fe456..d0f47e6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.class
index b502094..4276dc6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.class
index d839031..f07f816 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.class
index 6b0c2ae..0fdefa3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.class
index aa53718..48af137 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.class
index bc1269e..a865e34 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.class
index 7da5b9d..9c6a5cc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.class
index 09331e3..64fb2b0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.class
index 9ad6c90..fdd88d4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.class
index 4169f08..f10d448 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$1.class
index 0034028..27f0c73 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$TypeDeclarationVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$TypeDeclarationVisitor.class
index 0c86a99..afe75c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$TypeDeclarationVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector$TypeDeclarationVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.class
index c6d179c..feaabc6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.class
index 3abd502..4a3036c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.class
index 3484bc4..5cc81ee 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$1.class
index ece2c5c..01cafb3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$2.class
index fdd0618..c856d0d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.class
index 653db11..5f712e5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet.class
index b2b0fe4..b17778d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.class
index 6b9d09f..82d5acd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.class
index ce63eab..bd47462 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.class
index c635eb1..bb346a7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.class
index 90fadd9..143c34c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.class
index 1e0420b..08fdb82 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.class
index 4d4b124..eda2139 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.class
index a6752de..1d79266 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.class
index 234787d..469d1ff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager$1ProgressJob.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager$1ProgressJob.class
index a56c64f..4d31194 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager$1ProgressJob.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager$1ProgressJob.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.class
index fbc36d3..7533563 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder$1Visitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder$1Visitor.class
index 4a68a03..cca2a7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder$1Visitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder$1Visitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.class
index c7a21af..afef160 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.class
index 6332145..ed84ba4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.class
index 798e5ec..c73d6a2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.class
index e54e50f..1f8465e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.class
index 90bc795..c1bb18e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner.class
index 72d5141..de60b53 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.class
index 5f151de..af5fdeb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$1CaptureFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$1CaptureFinder.class
index 5643509..f88fb41 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$1CaptureFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$1CaptureFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$SyntheticLocalVariableBinding.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$SyntheticLocalVariableBinding.class
index f33bcb5..7bebd59 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$SyntheticLocalVariableBinding.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver$SyntheticLocalVariableBinding.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.class
index 2387af4..0c053af 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.class
index f929b50..52b096f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.class
index decd1fa..de23aa1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.class
index 1752c0c..fa9b202 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.class
index 42b4316..c6ed7ca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.class
index ae4824c..b6242af 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.class
index a40bcc0..ea0e3b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.class
index 99efe21..e6b6bc1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.class
index 5c81da6..f834b10 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.class
index df93999..fc21449 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.class
index 0f29333..afcd290 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.class
index c51c461..fbba41b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.class
index 536481c..20ee923 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.class
index 53518cd..001ffce 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.class
index 7d4384e..fe357c3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.class
index 8a08e94..942ccf5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.class
index 6c00b25..a877e05 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.class
index ae657cf..c1291e0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.class
index d790346..c4ce9c8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.class
index a8e1bcf..dcebb88 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.class
index d360738..447432c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.class
index f3c1e18..2910441 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.class
index 4319e22..66bad6d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.class
index 4eae8b2..ec19366 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.class
index f17f165..80eecb4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.class
index 299e099..4356b8d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.class
index 2ae5b45..8420fc3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.class
index cd88319..0cf751d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.class
index 100c7c5..1f1f406 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.class
index 23cfd12..94045d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.class
index eb56cad..8b40bcc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.class
index 235bef1..d1d3802 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.class
index c427763..0f90001 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.class
index af490ad..7f5ab35 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$1.class
index 58f7ae6..bf5dffb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$LRUCacheEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$LRUCacheEntry.class
index bf591c1..94def21 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$LRUCacheEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$LRUCacheEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$Stats.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$Stats.class
index f484ea5..bd2c8c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$Stats.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache$Stats.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.class
index ba3090a..7233993 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.class
index 195bfc0..af19d47 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.class
index 1b902f1..7a7145f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.class
index 01ce5ab..59802b3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.class
index 705d055..dc7ebad 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.class
index e79f6d0..f6a5da5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.class
index 08cbbf5..eaf8898 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.class
index 5a3c193..630fb1c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.class
index 0d4b66b..808fb18 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.class
index 8573af7..cd43d4c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.class
index d7321d8..8ce83f8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.class
index 982c4b7..b630779 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.class
index a3465ba..0f15d7b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.class
index b7e1ec7..d799dcb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$1.class
index 32ece01..4aac475 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$2.class
index e5928b4..d3277b7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$ModuleAccumulatorEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$ModuleAccumulatorEnvironment.class
index 5b61827..5c90471 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$ModuleAccumulatorEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil$ModuleAccumulatorEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.class
index a389c39..e702471 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.class
new file mode 100644
index 0000000..0a024d6
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.class
new file mode 100644
index 0000000..5c1c04e
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.class
new file mode 100644
index 0000000..9913204
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.class
index 2b728e1..5add774 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.class
index 99ed83b..3c00350 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.class
index 7b44aca..e0d6855 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.class
index d3b8a41..93b5aae 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.class
index 35278d5..0da6d34 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.class
index a02e9ca..36c688c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.class
index 977a4f2..9fec772 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.class
index 1878d73..12b526c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.class
index 7d84756..edea681 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.class
index 147e0b3..5b337ab 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.class
index b5d76de..e421829 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.class
index b707606..a58591b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.class
index 48c247f..6868e18 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.class
index e825607..1936b42 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.class
index dc6f7ab..32db2a3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.class
index 37b02c9..a2a5357 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.class
index ee38b6f..fe151c0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.class
index 2b465c1..f8beb0c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.class
index 22f6604..b22252d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.class
index 066f204..5f6ebaf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.class
index 2b2c2a1..4be830c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter$Pair.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter$Pair.class
index ab9c265..32a3a00 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter$Pair.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter$Pair.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.class
index 84a54d1..1b8af57 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$1.class
index 8c3c31b..4183d2d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$BindingsToNodesMap.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$BindingsToNodesMap.class
index dbcb9b3..534d2bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$BindingsToNodesMap.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$BindingsToNodesMap.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparable.class
index 1f94e2a..dad77ac 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparer.class
index 7139b33..1743991 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util$Comparer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util.class
index 4f99087..edc3f48 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/Util.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.class
index 3debc17..a3a2333 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet$HashableWeakReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet$HashableWeakReference.class
index caed153..bfc9eca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet$HashableWeakReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet$HashableWeakReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.class
index 906823f..286a6e7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray$HashableWeakReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray$HashableWeakReference.class
index b1b503b..98b9740 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray$HashableWeakReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray$HashableWeakReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.class
index 215a6cf..e9f2788 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
index 7cf3f28..7d00a51 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
@@ -294,6 +297,8 @@
 disassembler_localvariabletableattributeheader = Local variable table:
 disassembler_localvariabletypetableattributeheader = Local variable type table:
 disassembler_arraydimensions = []
+disassembler_nesthost = Nest Host:
+disassembler_nestmembers = Nest Members:
 disassembler_innerattributesheader = Inner classes:
 disassembler_inner_class_info_name = inner class info:
 disassembler_outer_class_info_name = outer class info:
@@ -328,6 +333,7 @@
 disassembler_constantpool_methodhandle = constant #{0} method handle: {1} #{2} 
 disassembler_constantpool_methodtype = constant #{0} method type: #{1} {2}
 disassembler_constantpool_invokedynamic = constant #{0} invoke dynamic: #{1} #{2} {3} {4}
+disassembler_constantpool_dynamic = constant #{0} dynamic: #{1} #{2} {3} {4}
 disassembler_annotationdefaultheader = Annotation Default:\ 
 disassembler_annotationdefaultvalue= {0} (constant type)
 disassembler_annotationenumvalue = {2}.{3}(enum type #{0}.#{1})
@@ -409,6 +415,9 @@
 classformat_anewarray = {0} {2} [{1}]
 classformat_checkcast = {0} {2} [{1}]
 classformat_instanceof = {0} {2} [{1}]
+classformat_ldc_w_methodtype = {0} <MethodType {2}> [{1}]
+classformat_ldc_w_methodhandle = {0} <MethodHandle {2} {3}> [{1}]
+classformat_ldc_w_dynamic = {0} <Dynamic> {2} {3} {4} [{1}]
 classformat_ldc_w_class = {0} <Class {2}> [{1}]
 classformat_ldc_w_float = {0} <Float {2}> [{1}]
 classformat_ldc_w_integer = {0} <Integer {2}> [{1}]
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.class
index 2aee6d0..02f5397 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.class
index 40da8ae..98ed742 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.class
index 84b5d93..8e72cc3 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.class
index e14b353..af3e7f4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.class
index 3982f28..09d7182 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.class
index c66e8da..e9f7ea5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.class
index 69afe37..278227d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.class
index 19ca21f..901edeb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.class
index ecbfecb..56f28bb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.class
index 60dc8f8..a3630d5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.class
index e94aacb..c9abdc5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.class
index e6a51f3..6b9b603 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton$BinaryMethodSkeleton.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton$BinaryMethodSkeleton.class
index 50156ab..b724262 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton$BinaryMethodSkeleton.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton$BinaryMethodSkeleton.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.class
index 6bb26e6..b7b9d52 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.class
index bbc47da..614f55d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.class
index 020e13e..bd3cc65 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$1.class
index 494ade3..994924b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$2.class
index 3e5c78b..5f5d5b1 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.class
index f8405e7..5dfc265 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.class
index c20d929..250fbdf 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.class
index 7191667..bef121d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1.class
index 1cfb20d..319b5eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1ForwardingRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1ForwardingRequestor.class
index fa424b8..75b7972 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1ForwardingRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$1ForwardingRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$2.class
index 3ff6929..8520ef2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$3.class
index 514bcc7..0a96335 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$3.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$4.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$4.class
index a3d0d2f..48e4ca9 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$4.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$4.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$5.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$5.class
index 39d5342..b08aee4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$5.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext$5.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.class
index 5e0b37c..a46dff2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.class
index ebe605e..650e0c7 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1.class
index 39acc43..89c15d4 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1CompilerRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1CompilerRequestor.class
index 69de707..ae598ca 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1CompilerRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator$1CompilerRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.class
index 3c73b24..96a193c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.class
index b52d3d9..d92a903 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.class
index 3cae216..d0e1ba2 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.class
index 0b9ae78..911c43d 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.class
index 842e4a1..240ce18 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.class
index 472e975..3d45912 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.class
index 37d64c0..1b33b1a 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$1.class
index e516a50..77903f5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$2.class
index eb44010..8c762de 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.class
index 546ad73..515b137 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions$Alignment.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions$Alignment.class
index 0b23aaa..1362d89 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions$Alignment.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions$Alignment.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.class
index 3ef8255..b0e43c6 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.class
index 5aa463d..884efcd 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator$1.class
index dde930f..66450ed 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.class
index cf3cad6..2947811 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.class
index 9ffec49..b778d5e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapMode.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapMode.class
index 6b45d52..3fb35f0 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapMode.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapMode.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapPolicy.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapPolicy.class
index f41a604..490a920 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapPolicy.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token$WrapPolicy.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token.class
index 875db80..f85376c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/Token.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager$1.class
index 16a1e39..960b456 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.class
index 76d87bf..a69fe5b 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.class
index 1f6d595..50a0788 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$AlignIndexFinder.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$AlignIndexFinder.class
new file mode 100644
index 0000000..4a40a84
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$AlignIndexFinder.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$PositionCounter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$PositionCounter.class
new file mode 100644
index 0000000..1ec6ddf
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner$PositionCounter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.class
new file mode 100644
index 0000000..5897901
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.class
index d0f5da6..08dc34e 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner$PositionCounter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner$PositionCounter.class
index 5bba35c..8e5dd3f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner$PositionCounter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner$PositionCounter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.class
index a44a79d..6210b92 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$LineAnalyzer.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$LineAnalyzer.class
index 8ebb601..83c74a8 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$LineAnalyzer.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$LineAnalyzer.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$NLSTagHandler.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$NLSTagHandler.class
index 628a3e8..7f5f68c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$NLSTagHandler.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$NLSTagHandler.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapInfo.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapInfo.class
index 6668cbc..d84265f 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapInfo.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapInfo.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapResult.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapResult.class
index 4128f87..18cba0c 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapResult.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapResult.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapsApplier.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapsApplier.class
index c6a5146..07a64c5 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapsApplier.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor$WrapsApplier.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.class
index f903c98..f247846 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$1.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$1.class
index 7866e32..31352ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$1.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$1.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$2.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$2.class
index 9cbeb34..25add75 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$2.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$2.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$3.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$3.class
new file mode 100644
index 0000000..da9f28c
--- /dev/null
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$3.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$FieldAccessAdapter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$FieldAccessAdapter.class
index 8501f18..b1bb6bc 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$FieldAccessAdapter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator$FieldAccessAdapter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.class
index d90d6fd..4c9fdff 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.class b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.class
index a4ad139..900e3eb 100644
--- a/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.class
+++ b/org.aspectj.ajde/classes/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/tools/ajc/Main.class b/org.aspectj.ajde/classes/org/aspectj/tools/ajc/Main.class
index 28435f9..0498429 100644
--- a/org.aspectj.ajde/classes/org/aspectj/tools/ajc/Main.class
+++ b/org.aspectj.ajde/classes/org/aspectj/tools/ajc/Main.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/tools/ajdoc/Main.class b/org.aspectj.ajde/classes/org/aspectj/tools/ajdoc/Main.class
index 5636d8d..4dac9ec 100644
--- a/org.aspectj.ajde/classes/org/aspectj/tools/ajdoc/Main.class
+++ b/org.aspectj.ajde/classes/org/aspectj/tools/ajdoc/Main.class
Binary files differ
diff --git a/org.aspectj.ajde/classes/org/aspectj/tools/ant/taskdefs/AjcTask.class b/org.aspectj.ajde/classes/org/aspectj/tools/ant/taskdefs/AjcTask.class
index 7fb00ff..ad06a84 100644
--- a/org.aspectj.ajde/classes/org/aspectj/tools/ant/taskdefs/AjcTask.class
+++ b/org.aspectj.ajde/classes/org/aspectj/tools/ant/taskdefs/AjcTask.class
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.java b/org.aspectj.ajde/source/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.java
index 5577a01..08d3ee3 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajde/core/internal/AjdeCoreBuildManager.java
@@ -223,10 +223,12 @@
 		if (configFile.exists() && configFile.isFile()) {
 			args = new String[] { "@" + configFile.getAbsolutePath() };
 		} else {
-			List<String> l = compilerConfig.getProjectSourceFiles();
-			if (l == null) {
+			List<String> projectSourceFiles = compilerConfig.getProjectSourceFiles();
+			if (projectSourceFiles == null) {
 				return null;
 			}
+			List<String> l = new ArrayList<>();
+			l.addAll(projectSourceFiles);
 			// If the processor options are specified build the command line options for the JDT compiler to see
 			String processor = compilerConfig.getProcessor();
 			if (processor != null && processor.length() != 0) {
@@ -238,20 +240,25 @@
 				l.add("-processorpath");
 				l.add(processorPath);
 			}
+			if (compilerConfig.getOutputLocationManager() != null &&
+					compilerConfig.getOutputLocationManager().getDefaultOutputLocation() != null) {
+				l.add("-d");
+				l.add(compilerConfig.getOutputLocationManager().getDefaultOutputLocation().toString());
+			}
 			List<String> xmlfiles = compilerConfig.getProjectXmlConfigFiles();
 			if (xmlfiles != null && !xmlfiles.isEmpty()) {
 				args = new String[l.size() + xmlfiles.size() + 1];
 				// TODO speedup
 				int p = 0;
 				for (int i = 0; i < l.size(); i++) {
-					args[p++] = (String) l.get(i);
+					args[p++] = l.get(i);
 				}
 				for (int i = 0; i < xmlfiles.size(); i++) {
-					args[p++] = (String) xmlfiles.get(i);
+					args[p++] = xmlfiles.get(i);
 				}
 				args[p++] = "-xmlConfigured";
 			} else {
-				args = (String[]) l.toArray(new String[l.size()]);
+				args = l.toArray(new String[l.size()]);
 			}
 		}
 
@@ -320,7 +327,7 @@
 		// Process the JAVA OPTIONS MAP
 		Map<String,String> jom = compilerConfig.getJavaOptionsMap();
 		if (jom != null) {
-			String version = (String) jom.get(CompilerOptions.OPTION_Compliance);
+			String version = jom.get(CompilerOptions.OPTION_Compliance);
 			if (version != null && !version.equals(CompilerOptions.VERSION_1_4)) {
 				config.setBehaveInJava5Way(true);
 			}
@@ -383,7 +390,7 @@
 		} else {
 			tokens.addAll(tokenizeString(nonStdOptions));
 		}
-		String[] args = (String[]) tokens.toArray(new String[] {});
+		String[] args = tokens.toArray(new String[] {});
 
 		// set the non-standard options in an alternate build config
 		// (we don't want to lose the settings we already have)
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/BuildArgParser.java b/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/BuildArgParser.java
index 448618c..66488fa 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/BuildArgParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/BuildArgParser.java
@@ -815,33 +815,17 @@
 			} else if (arg.equals("-timers")) {
 				buildConfig.setTiming(true);
 				// swallow - it is dealt with in Main.runMain()
-			} else if (arg.equals("-1.5")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-1.5");
-				// this would enable the '-source 1.5' to do the same as '-1.5' but doesnt sound quite right as
-				// as an option right now as it doesnt mean we support 1.5 source code - people will get confused...
-			} else if (arg.equals("-1.6")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-1.6");
-			} else if (arg.equals("-1.7")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-1.7");
-			} else if (arg.equals("-1.8")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-1.8");
-			} else if (arg.equals("-1.9")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-1.9");
-			} else if (arg.equals("-10")) {
-				buildConfig.setBehaveInJava5Way(true);
-				unparsedArgs.add("-10");
+			} else if (arg.equals("-1.3")) {
+				buildConfig.setBehaveInJava5Way(false);
+				unparsedArgs.add("-1.3");
+			} else if (arg.equals("-1.4")) {
+				buildConfig.setBehaveInJava5Way(false);
+				unparsedArgs.add("-1.4");
 			} else if (arg.equals("-source")) {
 				if (args.size() > nextArgIndex) {
 					String level = args.get(nextArgIndex).getValue();
-					if (level.equals("1.5") || level.equals("5") || level.equals("1.6") || level.equals("6") || level.equals("1.7")
-							|| level.equals("7") || level.equals("8") || level.equals("1.8")
-							|| level.equals("9") || level.equals("1.9") || level.equals("10")) {
-						buildConfig.setBehaveInJava5Way(true);
+					if (level.equals("1.3") || level.equals("1.4")) {
+						buildConfig.setBehaveInJava5Way(false);
 					}
 					unparsedArgs.add("-source");
 					unparsedArgs.add(level);
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/messages.properties b/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/messages.properties
index 516af38..d40571f 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/ajc/messages.properties
@@ -4,8 +4,8 @@
      The -Xlintfile:lint.properties allows fine-grained control. In tools.jar, see
      org/aspectj/weaver/XlintDefault.properties for the default behavior and a template to copy. 
 ### AspectJ-specific messages 
-compiler.name = AspectJ Compiler 1.9.1
-compiler.version = Eclipse Compiler #abe06abe4ce1(Apr2018), 3.14
+compiler.name = AspectJ Compiler 1.9.2
+compiler.version = Eclipse Compiler #6373b82afa49b(1-Oct-2018), 3.16
 compiler.copyright = 
 
 
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java
index 5d7d337..349758e 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java
@@ -71,7 +71,6 @@
 import org.aspectj.weaver.EnumAnnotationValue;
 import org.aspectj.weaver.ReferenceType;
 import org.aspectj.weaver.ResolvedMember;
-import org.aspectj.weaver.ResolvedMemberImpl;
 import org.aspectj.weaver.ResolvedPointcutDefinition;
 import org.aspectj.weaver.ResolvedType;
 import org.aspectj.weaver.StandardAnnotation;
@@ -135,11 +134,13 @@
 		resolvedTypeX.setEndPos(declaration.sourceEnd);
 	}
 
+	@Override
 	public boolean isAspect() {
 		final boolean isCodeStyle = declaration instanceof AspectDeclaration;
 		return isCodeStyle ? isCodeStyle : isAnnotationStyleAspect();
 	}
 
+	@Override
 	public boolean isAnonymous() {
 		if (declaration.binding != null) {
 			return declaration.binding.isAnonymousType();
@@ -147,6 +148,7 @@
 		return ((declaration.modifiers & (ASTNode.IsAnonymousType | ASTNode.IsLocalType)) != 0);
 	}
 
+	@Override
 	public boolean isNested() {
 		if (declaration.binding != null) {
 			return (declaration.binding.isMemberType());
@@ -154,6 +156,7 @@
 		return ((declaration.modifiers & ASTNode.IsMemberType) != 0);
 	}
 
+	@Override
 	public ResolvedType getOuterClass() {
 		if (declaration.binding != null) {
 			ReferenceBinding enclosingType = declaration.binding.enclosingType();
@@ -167,6 +170,7 @@
 		return eclipseWorld().fromEclipse(declaration.enclosingType.binding);
 	}
 
+	@Override
 	public boolean isAnnotationStyleAspect() {
 		if (declaration.annotations == null) {
 			return false;
@@ -234,10 +238,12 @@
 		return false;
 	}
 
+	@Override
 	public WeaverStateInfo getWeaverState() {
 		return null;
 	}
 
+	@Override
 	public ResolvedType getSuperclass() {
 		if (binding.isInterface()) {
 			return getResolvedTypeX().getWorld().getCoreType(UnresolvedType.OBJECT);
@@ -246,6 +252,7 @@
 		return eclipseWorld().fromEclipse(binding.superclass());
 	}
 
+	@Override
 	public ResolvedType[] getDeclaredInterfaces() {
 		return eclipseWorld().fromEclipse(binding.superInterfaces());
 	}
@@ -420,6 +427,7 @@
 	 * This method may not return all fields, for example it may not include the ajc$initFailureCause or ajc$perSingletonInstance
 	 * fields - see bug 129613
 	 */
+	@Override
 	public ResolvedMember[] getDeclaredFields() {
 		if (declaredFields == null) {
 			fillDeclaredMembers();
@@ -431,6 +439,7 @@
 	 * This method may not return all methods, for example it may not include clinit, aspectOf, hasAspect or ajc$postClinit methods
 	 * - see bug 129613
 	 */
+	@Override
 	public ResolvedMember[] getDeclaredMethods() {
 		if (declaredMethods == null) {
 			fillDeclaredMembers();
@@ -438,6 +447,7 @@
 		return declaredMethods;
 	}
 
+	@Override
 	public ResolvedMember[] getDeclaredPointcuts() {
 		if (declaredPointcuts == null) {
 			fillDeclaredMembers();
@@ -445,11 +455,13 @@
 		return declaredPointcuts;
 	}
 
+	@Override
 	public int getModifiers() {
 		// only return the real Java modifiers, not the extra eclipse ones
 		return binding.modifiers & ExtraCompilerModifiers.AccJustFlag;
 	}
 
+	@Override
 	public String toString() {
 		return "EclipseSourceType(" + new String(binding.sourceName()) + ")";
 	}
@@ -516,6 +528,7 @@
 	// dec.sourceEnd);
 	// }
 
+	@Override
 	public boolean isInterface() {
 		return binding.isInterface();
 	}
@@ -525,14 +538,17 @@
 	public final static short ACC_ANNOTATION = 0x2000;
 	public final static short ACC_ENUM = 0x4000;
 
+	@Override
 	public boolean isEnum() {
 		return (binding.getAccessFlags() & ACC_ENUM) != 0;
 	}
 
+	@Override
 	public boolean isAnnotation() {
 		return (binding.getAccessFlags() & ACC_ANNOTATION) != 0;
 	}
 
+	@Override
 	public boolean isAnnotationWithRuntimeRetention() {
 		if (!isAnnotation()) {
 			return false;
@@ -541,6 +557,7 @@
 		}
 	}
 
+	@Override
 	public String getRetentionPolicy() {
 		if (isAnnotation()) {
 			if ((binding.getAnnotationTagBits() & TagBits.AnnotationRetentionMASK) == TagBits.AnnotationRuntimeRetention) {
@@ -556,6 +573,7 @@
 		return null;
 	}
 
+	@Override
 	public boolean canAnnotationTargetType() {
 		if (isAnnotation()) {
 			return ((binding.getAnnotationTagBits() & TagBits.AnnotationForType) != 0);
@@ -563,6 +581,7 @@
 		return false;
 	}
 
+	@Override
 	public AnnotationTargetKind[] getAnnotationTargetKinds() {
 		if (discoveredAnnotationTargetKinds) {
 			return annotationTargetKinds;
@@ -655,6 +674,7 @@
 		}
 	}
 
+	@Override
 	public boolean hasAnnotation(UnresolvedType ofType) {
 		ensureAnnotationTypesResolved();
 		for (int a = 0, max = annotationTypes.length; a < max; a++) {
@@ -680,6 +700,7 @@
 	 * annotations, this code only needs to deal with converting system annotations that the weaver needs to process
 	 * (RetentionPolicy, Target).
 	 */
+	@Override
 	public AnnotationAJ[] getAnnotations() {
 		int declarationAnnoCount = (declaration.annotations == null ? 0 : declaration.annotations.length);
 		if (annotations != null && annotations.length == declarationAnnoCount) {
@@ -701,6 +722,7 @@
 		return annotations;
 	}
 	
+	@Override
 	public boolean hasAnnotations() {
 		return (declaration.annotations != null && declaration.annotations.length != 0);
 	}
@@ -1002,11 +1024,13 @@
 		}
 	}
 
+	@Override
 	public ResolvedType[] getAnnotationTypes() {
 		ensureAnnotationTypesResolved();
 		return annotationTypes;
 	}
 
+	@Override
 	public PerClause getPerClause() {
 		// should probably be: ((AspectDeclaration)declaration).perClause;
 		// but we don't need this level of detail, and working with real per
@@ -1147,30 +1171,37 @@
 		return kind;
 	}
 
-	public Collection getDeclares() {
+	@Override
+	public Collection<Declare> getDeclares() {
 		return declares;
 	}
 
-	public Collection getPrivilegedAccesses() {
-		return Collections.EMPTY_LIST;
+	@Override
+	public Collection<ResolvedMember> getPrivilegedAccesses() {
+		return Collections.emptyList();
 	}
 
+	@Override
 	public Collection getTypeMungers() {
 		return typeMungers;
 	}
 
+	@Override
 	public boolean doesNotExposeShadowMungers() {
 		return true;
 	}
 
+	@Override
 	public String getDeclaredGenericSignature() {
 		return CharOperation.charToString(binding.genericSignature());
 	}
 
+	@Override
 	public boolean isGeneric() {
 		return binding.isGenericType();
 	}
 
+	@Override
 	public TypeVariable[] getTypeVariables() {
 		if (declaration.typeParameters == null) {
 			return new TypeVariable[0];
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java
index 2cb035a..c80bbb5 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java
@@ -54,6 +54,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TagBits;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding;
@@ -68,6 +69,7 @@
 import org.aspectj.weaver.ResolvedTypeMunger;
 import org.aspectj.weaver.Shadow;
 import org.aspectj.weaver.UnresolvedType;
+import org.aspectj.weaver.patterns.Declare;
 import org.aspectj.weaver.patterns.DeclareAnnotation;
 import org.aspectj.weaver.patterns.DeclareParents;
 import org.aspectj.weaver.patterns.DeclareSoft;
@@ -489,8 +491,8 @@
 		if (typeDecl.enclosingType != null && (typeDecl.enclosingType instanceof AspectDeclaration)) {
 			AspectDeclaration ad = (AspectDeclaration) typeDecl.enclosingType;
 			if (ad.concreteName != null) {
-				List declares = ad.concreteName.declares;
-				for (Iterator iter = declares.iterator(); iter.hasNext();) {
+				List<Declare> declares = ad.concreteName.declares;
+				for (Iterator<Declare> iter = declares.iterator(); iter.hasNext();) {
 					Object dec = iter.next();
 					if (dec instanceof DeclareParents) {
 						DeclareParents decp = (DeclareParents) dec;
@@ -514,8 +516,9 @@
 	private final static char[] thisJoinPointStaticPartName = "thisJoinPointStaticPart".toCharArray();
 	private final static char[] thisEnclosingJoinPointStaticPartName = "thisEnclosingJoinPointStaticPart".toCharArray();
 	private final static char[] thisAspectInstanceName = "thisAspectInstance".toCharArray();
-	
-	public void uninitializedLocalVariable(LocalVariableBinding binding, ASTNode location) {
+
+	@Override
+	public void uninitializedLocalVariable(LocalVariableBinding binding, ASTNode location, Scope scope) {
 		if (CharOperation.equals(binding.name, thisJoinPointName) ||
 			CharOperation.equals(binding.name, thisJoinPointStaticPartName) ||
 			CharOperation.equals(binding.name, thisAspectInstanceName) || 
@@ -526,7 +529,7 @@
 				return;
 			}
 		}			
-		super.uninitializedLocalVariable(binding, location);
+		super.uninitializedLocalVariable(binding, location, scope);
 	}
 	
 	public void abstractMethodInConcreteClass(SourceTypeBinding type) {
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java
index 11a0b3e..1b6343f 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildConfig.java
@@ -253,7 +253,7 @@
 	private List<Classpath> processFilePath(List<File> path, java.lang.String encoding) {
 		List<Classpath> entries = new ArrayList<Classpath>();
 		for (File file: path) {
-			entries.add(FileSystem.getClasspath(file.getAbsolutePath(), encoding, null, ClasspathLocation.BINARY));
+			entries.add(FileSystem.getClasspath(file.getAbsolutePath(), encoding, null, ClasspathLocation.BINARY, null));
 		}
 		return entries;
 	}
@@ -261,7 +261,7 @@
 	private List<Classpath> processStringPath(List<String> path, java.lang.String encoding) {
 		List<Classpath> entries = new ArrayList<Classpath>();
 		for (String file: path) {
-			entries.add(FileSystem.getClasspath(file, encoding, null, ClasspathLocation.BINARY));
+			entries.add(FileSystem.getClasspath(file, encoding, null, ClasspathLocation.BINARY, null));
 		}
 		return entries;
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java
index c9ce44a..9c58c24 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjBuildManager.java
@@ -954,7 +954,7 @@
 		// 'classpaths' object it isn't recording where the code came from. This will be an issue later for
 		// weaving, the distinction will need to be maintained for proper 'module aware/respecting' weaving.
 		if (buildConfig.getCheckedClasspaths() == null) {
-			nameEnvironment = new FileSystem(classpaths, filenames, defaultEncoding, ClasspathLocation.BINARY);
+			nameEnvironment = new FileSystem(classpaths, filenames, defaultEncoding, ClasspathLocation.BINARY, null);
 		} else {
 			nameEnvironment = new FileSystem(buildConfig.getCheckedClasspaths(), filenames, false, null);
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java
index a7be9ec..cdf534b 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AjCompilerOptions.java
@@ -73,7 +73,7 @@
 	public String xOptionalJoinpoints = null;
 
 	// If true - autoboxing behaves differently ...
-	public boolean behaveInJava5Way = false;
+	public boolean behaveInJava5Way = true;
 
 	public boolean timing = false;
 
@@ -117,6 +117,7 @@
 		set(settings);
 	}
 
+	@Override
 	public Map<String,String> getMap() {
 		Map<String,String> map = super.getMap();
 		// now add AspectJ additional options		
@@ -148,6 +149,7 @@
 		return map;
 	}
 
+	@Override
 	public void set(Map<String,String> optionsMap) {
 		super.set(optionsMap);
 		Object optionValue;
@@ -282,6 +284,7 @@
 		super.warningThreshold.set(CompilerOptions.SwallowedExceptionInCatchBlock);
 	}
 
+	@Override
 	public String toString() {
 		StringBuffer buf = new StringBuffer(super.toString());
 		// now add AspectJ additional options
diff --git a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.java b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.java
index 1c2ea56..84258cf 100644
--- a/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/ajdt/internal/core/builder/AsmElementFormatter.java
@@ -57,7 +57,10 @@
  */
 public class AsmElementFormatter {
 
-	public void genLabelAndKind(MethodDeclaration methodDeclaration, IProgramElement node) {
+  private final static String ASPECTJ_ANNOTATION_PACKAGE = "org.aspectj.lang.annotation";
+  private final static char PACKAGE_INITIAL_CHAR = ASPECTJ_ANNOTATION_PACKAGE.charAt(0);
+
+  public void genLabelAndKind(MethodDeclaration methodDeclaration, IProgramElement node) {
 
 		if (methodDeclaration instanceof AdviceDeclaration) {
 			AdviceDeclaration ad = (AdviceDeclaration) methodDeclaration;
@@ -219,7 +222,7 @@
 						// Note: AV: implicit single advice type support here (should be enforced somewhere as well (APT etc))
 						Annotation annotation = methodDeclaration.annotations[i];
 						String annotationSig = new String(annotation.type.getTypeBindingPublic(methodDeclaration.scope).signature());
-						if (annotationSig.charAt(1) == 'o') {
+						if (annotationSig.charAt(1) == PACKAGE_INITIAL_CHAR) {
 							if ("Lorg/aspectj/lang/annotation/Pointcut;".equals(annotationSig)) {
 								node.setKind(IProgramElement.Kind.POINTCUT);
 								node.setAnnotationStyleDeclaration(true); // pointcuts don't seem to get handled quite right...
@@ -418,8 +421,8 @@
 	public void setParameters(AbstractMethodDeclaration md, IProgramElement pe) {
 		Argument[] argArray = md.arguments;
 		if (argArray == null) {
-			pe.setParameterNames(Collections.EMPTY_LIST);
-			pe.setParameterSignatures(Collections.EMPTY_LIST, Collections.EMPTY_LIST);
+			pe.setParameterNames(Collections.<String>emptyList());
+			pe.setParameterSignatures(Collections.<char[]>emptyList(), Collections.<String>emptyList());
 		} else {
 			List<String> names = new ArrayList<String>();
 			List<char[]> paramSigs = new ArrayList<char[]>();
@@ -459,7 +462,7 @@
 
 	// TODO: fix this way of determing ajc-added arguments, make subtype of Argument with extra info
 	private boolean acceptArgument(String name, String type) {
-		if (name.charAt(0) != 'a' && type.charAt(0) != 'o') {
+		if (name.charAt(0) != 'a' && type.charAt(0) != PACKAGE_INITIAL_CHAR) {
 			return true;
 		}
 		return !name.startsWith("ajc$this_") && !type.equals("org.aspectj.lang.JoinPoint.StaticPart")
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BindingKey.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BindingKey.java
index b6443db..9184f1f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BindingKey.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BindingKey.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.java
index 9602c17..05e3b55 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BufferChangedEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BuildJarIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BuildJarIndex.java
index a9d98b8..e7a3006 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BuildJarIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/BuildJarIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CheckDebugAttributes.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CheckDebugAttributes.java
index c07fa21..1f6a8f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CheckDebugAttributes.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CheckDebugAttributes.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.java
index bf5926b..d38cf9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathContainerInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.java
index 46c1c17..b0cc59f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ClasspathVariableInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionContext.java
index fe78c5b..e862983 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionFlags.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionFlags.java
index 9d15e80..f3a6f2e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionFlags.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionFlags.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionProposal.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionProposal.java
index 0c60bdc..95de170 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionProposal.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionProposal.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.java
index ded3fbd..6bfb64c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.java
index 5232089..9c458cc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CompletionRequestorAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.java
index b78a66b..2a0a55c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/CorrectionEngine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.java
index 9917302..d029040 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ElementChangedEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Flags.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Flags.java
index 5fedc01..985c7d0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Flags.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Flags.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAccessRule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAccessRule.java
index 72299bc..c332a18 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAccessRule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAccessRule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotatable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotatable.java
index 4563a79..86b1789 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotatable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotatable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotation.java
index 8dd0b8b..9438c0b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBuffer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBuffer.java
index d50f9ef..d14ec4e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBuffer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBuffer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.java
index cee9172..b994e8c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferChangedListener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferFactory.java
index 6cdb164..b1b6fa4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IBufferFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClassFile.java
index f0a068c..c7ed64b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.java
index c8ba9c9..3af9b31 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.java
index bb720df..649320f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.java
index e42111c..056dcbd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IClasspathEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeAssist.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeAssist.java
index 24600f0..3d9a2f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeAssist.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeAssist.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.java
index d822362..8279d25 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeCompletionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.java
index e8e2116..53d122b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICodeFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.java
index 2faa16d..f322f23 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.java
index 7e68372..de90a7a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICompletionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.java
index d433b0a..9f73e71 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ICorrectionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.java
index 3ad3332..ddbf855 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IElementChangedListener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IField.java
index 767ee7f..c3656a9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportContainer.java
index fe6e385..94000c0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.java
index 197089e..6ae5b66 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IImportDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IInitializer.java
index ef3532b..567c7f5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.java
index ef1aef0..a40a27d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJarEntryResource.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElement.java
index 7cd39bc..8a63918 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.java
index f2a981f..487e35a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaElementDelta.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModel.java
index f5c94ce..8b84ab7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelMarker.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelMarker.java
index 07c5536..4dcb1a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelMarker.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelMarker.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.java
index 2f85529..430df3f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatus.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatusConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatusConstants.java
index 5359a67..b320c0f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatusConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaModelStatusConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaProject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaProject.java
index 9be4cbb..2a600e3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaProject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IJavaProject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ILocalVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ILocalVariable.java
index 385bdef..a88b0e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ILocalVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ILocalVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMember.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMember.java
index 2416394..aa9020a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMember.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMember.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.java
index 911c83b..a605a12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMethod.java
index 449e27d..930428b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModularClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModularClassFile.java
index 74622fd..3655d89 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModularClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModularClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModuleDescription.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModuleDescription.java
index 8df8a1b..c749f65 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModuleDescription.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IModuleDescription.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOpenable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOpenable.java
index 6eb21f4..f719214 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOpenable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOpenable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.java
index 194f65c..3e532ba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IOrdinaryClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.java
index 2667a90..a7a949d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragment.java
index de03096..ebca86b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.java
index 95907ae..0eb0ddc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IPackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IParent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IParent.java
index df1bc0e..d13236d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IParent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IParent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.java
index 0abb232..25252e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IProblemRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IRegion.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IRegion.java
index 71d2709..09940cd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IRegion.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IRegion.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.java
index 2f4deb6..c738a25 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceManipulation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceRange.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceRange.java
index fd49ef4..b15ed0b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceRange.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceRange.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceReference.java
index a854a9d..42680f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ISourceReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IType.java
index b6809d1..29d2603 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.java
index 4b477e0..ac0ad63 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.java
index 7672eca..0301662 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeHierarchyChangedListener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeParameter.java
index aea2cf1..013620d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeRoot.java
index 12b7503..189e64c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ITypeRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.java
index fac554f..b757f7a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/IWorkingCopy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JDTCompilerAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JDTCompilerAdapter.java
index bbda004..26b0fa9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JDTCompilerAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JDTCompilerAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -522,7 +525,7 @@
 			niceSourceList.append("s"); //$NON-NLS-1$
 		}
 		niceSourceList.append(" to be compiled:"); //$NON-NLS-1$
-		niceSourceList.append(lSep);
+		niceSourceList.append(System.lineSeparator());
 
 		String[] encodedFiles = null, encodedDirs = null;
 		int encodedFilesLength = 0, encodedDirsLength = 0;
@@ -574,7 +577,7 @@
 				}
 			}
 			cmd.createArgument().setValue(arg);
-			niceSourceList.append("    " + arg + lSep); //$NON-NLS-1$
+			niceSourceList.append("    " + arg + System.lineSeparator()); //$NON-NLS-1$
 		}
 
 		this.attributes.log(niceSourceList.toString(), Project.MSG_VERBOSE);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaConventions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaConventions.java
index 1c56f06..f5a7288 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaConventions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaConventions.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaCore.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaCore.java
index 529a3ca..4750504 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaCore.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaCore.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -154,6 +157,7 @@
 import org.eclipse.core.runtime.QualifiedName;
 import org.eclipse.core.runtime.SubMonitor;
 import org.eclipse.core.runtime.jobs.ISchedulingRule;
+import org.eclipse.core.runtime.jobs.MultiRule;
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.core.compiler.IProblem;
 import org.aspectj.org.eclipse.jdt.core.search.IJavaSearchConstants;
@@ -338,7 +342,7 @@
 	 * <p><code>"cldc1.1"</code> requires the source version to be <code>"1.3"</code> and the compliance version to be <code>"1.4"</code> or lower.</p>
 	 * <dl>
 	 * <dt>Option id:</dt><dd><code>"org.aspectj.org.eclipse.jdt.core.compiler.codegen.targetPlatform"</code></dd>
-	 * <dt>Possible values:</dt><dd><code>{ "1.1", "cldc1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "9", "10" }</code></dd>
+	 * <dt>Possible values:</dt><dd><code>{ "1.1", "cldc1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "9", "10", "11" }</code></dd>
 	 * <dt>Default:</dt><dd><code>"1.2"</code></dd>
 	 * </dl>
 	 * @category CompilerOptionID
@@ -2058,7 +2062,7 @@
 	 *    set to the same version as the source level.</p>
 	 * <dl>
 	 * <dt>Option id:</dt><dd><code>"org.aspectj.org.eclipse.jdt.core.compiler.source"</code></dd>
-	 * <dt>Possible values:</dt><dd><code>{ "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "10" }</code></dd>
+	 * <dt>Possible values:</dt><dd><code>{ "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "9", "10", "11" }</code></dd>
 	 * <dt>Default:</dt><dd><code>"1.3"</code></dd>
 	 * </dl>
 	 * @since 2.0
@@ -2076,7 +2080,7 @@
 	 *    should match the compliance setting.</p>
 	 * <dl>
 	 * <dt>Option id:</dt><dd><code>"org.aspectj.org.eclipse.jdt.core.compiler.compliance"</code></dd>
-	 * <dt>Possible values:</dt><dd><code>{ "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "9", "10" }</code></dd>
+	 * <dt>Possible values:</dt><dd><code>{ "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "9", "10", "11" }</code></dd>
 	 * <dt>Default:</dt><dd><code>"1.4"</code></dd>
 	 * </dl>
 	 * @since 2.0
@@ -3005,20 +3009,28 @@
 	public static final String VERSION_10 = "10"; //$NON-NLS-1$
 	/**
 	 * Configurable option value: {@value}.
+	 * @since 3.16
+	 * @category OptionValue
+	 */
+	public static final String VERSION_11 = "11"; //$NON-NLS-1$
+	/**
+	 * Configurable option value: {@value}.
 	 * @since 3.4
 	 * @category OptionValue
 	 */
 	public static final String VERSION_CLDC_1_1 = "cldc1.1"; //$NON-NLS-1$
+	private static List<String> allVersions = Arrays.asList(VERSION_CLDC_1_1, VERSION_1_1, VERSION_1_2, VERSION_1_3, VERSION_1_4, VERSION_1_5,
+			VERSION_1_6, VERSION_1_7, VERSION_1_8, VERSION_9, VERSION_10, VERSION_11);
 
 	/**
-	 * Returns all {@link JavaCore}{@code #VERSION_*} levels.
+	 * Returns all {@link JavaCore}{@code #VERSION_*} levels in the order of their 
+	 * introduction. For e.g., {@link JavaCore#VERSION_1_8} appears before {@link JavaCore#VERSION_10}
 	 * 
 	 * @return all available versions
 	 * @since 3.14
 	 */
 	public static List<String> getAllVersions() {
-		return Arrays.asList(VERSION_CLDC_1_1, VERSION_1_1, VERSION_1_2, VERSION_1_3, VERSION_1_4, VERSION_1_5,
-				VERSION_1_6, VERSION_1_7, VERSION_1_8, VERSION_9, VERSION_10);
+		return allVersions;
 	}
 
 	/**
@@ -4496,7 +4508,11 @@
 			};
 			mainMonitor.subTask(Messages.javamodel_building_after_upgrade);
 			try {
-				ResourcesPlugin.getWorkspace().run(runnable, mainMonitor.split(1));
+				ResourcesPlugin.getWorkspace().run(
+					runnable,
+					new MultiRule(Arrays.stream(projects).map(IJavaProject::getResource).toArray(ISchedulingRule[]::new)),
+					IWorkspace.AVOID_UPDATE,
+					mainMonitor.split(1));
 			} catch (CoreException e) {
 				// could not touch all projects
 			}
@@ -5924,7 +5940,9 @@
 	 * @since 3.3
 	 */
 	public static void setComplianceOptions(String compliance, Map options) {
-		switch((int) (CompilerOptions.versionToJdkLevel(compliance) >>> 16)) {
+		long jdkLevel = CompilerOptions.versionToJdkLevel(compliance);
+		int major = (int) (jdkLevel >>> 16);
+		switch(major) {
 			case ClassFileConstants.MAJOR_VERSION_1_3:
 				options.put(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_3);
 				options.put(JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_3);
@@ -5989,6 +6007,18 @@
 				options.put(JavaCore.COMPILER_CODEGEN_INLINE_JSR_BYTECODE, JavaCore.ENABLED);
 				options.put(JavaCore.COMPILER_RELEASE, JavaCore.ENABLED);
 				break;
+			default:
+				if(major > ClassFileConstants.MAJOR_VERSION_10) {
+					String version = CompilerOptions.versionFromJdkLevel(jdkLevel);
+					options.put(JavaCore.COMPILER_COMPLIANCE, version);
+					options.put(JavaCore.COMPILER_SOURCE, version);
+					options.put(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, version);
+					options.put(JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.ERROR);
+					options.put(JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.ERROR);
+					options.put(JavaCore.COMPILER_CODEGEN_INLINE_JSR_BYTECODE, JavaCore.ENABLED);
+					options.put(JavaCore.COMPILER_RELEASE, JavaCore.ENABLED);
+		}
+				break;
 		}
 	}
 
@@ -6016,6 +6046,16 @@
 	}
 
 	/**
+	 * Returns the latest version of Java supported by the Java Model. This is usually the last entry
+	 * from {@link JavaCore#getAllVersions()}.
+	 *
+	 * @since 3.16
+	 * @return the latest Java version support by Java Model
+	 */
+	public static String latestSupportedJavaVersion() {
+		return allVersions.get(allVersions.size() - 1);
+	}
+	/**
 	 * Compares two given versions of the Java platform. The versions being compared must both be
 	 * one of the supported values mentioned in
 	 * {@link #COMPILER_CODEGEN_TARGET_PLATFORM COMPILER_CODEGEN_TARGET_PLATFORM},
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaModelException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaModelException.java
index 49f9483..0b368d5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaModelException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/JavaModelException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/NamingConventions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/NamingConventions.java
index 7fa561b..1683ce1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/NamingConventions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/NamingConventions.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Signature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Signature.java
index f50b680..2c44ea7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Signature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/Signature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/SourceRange.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/SourceRange.java
index 239f3f5..2f9719d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/SourceRange.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/SourceRange.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ToolFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ToolFactory.java
index 3dcaaaf..97c5783 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ToolFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/ToolFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.java
index 6878184..4e9abf9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/WorkingCopyOwner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.java
index c003cad..e7e4b49 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/BuildContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.java
index 3ccb9a1..7bd3732 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CategorizedProblem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.java
index d4c795a..569ecfa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CharOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.java
index 906e65c..018ec80 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationParticipant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    mkaufman@bea.com - initial API as ICompilationParticipant
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.java
index a0a11b0..8e98ce5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/CompilationProgress.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.java
index a247f92..48c51e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IProblem.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -2009,7 +2012,7 @@
 	/** @since 3.14 */
 	int OverridingTerminallyDeprecatedSinceVersionMethod = MethodRelated + 1414;
 
-	// deprecation of package / module:
+	// unused constants:
 	/** @since 3.14 */
 	int UsingDeprecatedPackage = ModuleRelated + 1425;
 	/** @since 3.14 */
@@ -2018,6 +2021,7 @@
 	int UsingTerminallyDeprecatedPackage = ModuleRelated + 1427;
 	/** @since 3.14 */
 	int UsingTerminallyDeprecatedSinceVersionPackage = ModuleRelated + 1428;
+	// deprecation of modules:
 	/** @since 3.14 */
 	int UsingDeprecatedModule = ModuleRelated + 1429;
 	/** @since 3.14 */
@@ -2097,5 +2101,7 @@
 	int VarIsReservedInFuture = Syntax + 1510; // ''var'' should not be used as an type name, since it is a reserved word from source level 10 on
 	/** @since 3.14 */
 	int VarIsNotAllowedHere = Syntax + 1511; // ''var'' is not allowed here
+	/** @since 3.16 */
+	int VarCannotBeMixedWithNonVarParams = Syntax + 1512; // ''var'' cannot be mixed with explicit or implicit parameters
 	
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.java
index 28e0b50..37dcfdf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/IScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ITerminalSymbols.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ITerminalSymbols.java
index f1548b3..8addea2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ITerminalSymbols.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ITerminalSymbols.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.java
index 3154926..0b6c5b9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/InvalidInputException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.java
index 384b285..f8d1bb9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/ReconcileContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    mkaufman@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.java
index b1d803d..62e4fcf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/compiler/batch/BatchCompiler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AST.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AST.java
index 414aeba..f9703b8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AST.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AST.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -25,6 +28,7 @@
 import org.aspectj.org.eclipse.jdt.core.IJavaProject;
 import org.aspectj.org.eclipse.jdt.core.JavaCore;
 import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
+import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
 import org.aspectj.org.eclipse.jdt.internal.compiler.parser.Scanner;
 import org.eclipse.jface.text.IDocument;
 import org.eclipse.text.edits.TextEdit;
@@ -235,6 +239,7 @@
 	 * </p>
 	 *
 	 * @since 3.14
+	 * @deprecated Clients should use the {@link #JLS11} AST API instead.
 	 */
 	public static final int JLS10 = 10;
 
@@ -245,6 +250,29 @@
 	 */
 	/*package*/ static final int JLS10_INTERNAL = JLS10;
 
+	/**
+	 * Constant for indicating the AST API that handles JLS11.
+	 * <p>
+	 * This API is capable of handling all constructs in the
+	 * Java language as described in the Java Language
+	 * Specification, Java SE 11 Edition (JLS11).
+	 * JLS11 is a superset of all earlier versions of the
+	 * Java language, and the JLS11 API can be used to manipulate
+	 * programs written in all versions of the Java language
+	 * up to and including Java SE 11 (aka JDK 11).
+	 * </p>
+	 *
+	 * @since 3.16
+	 */
+	public static final int JLS11 = 11;
+
+	/**
+	 * Internal synonym for {@link #JLS11}. Use to alleviate
+	 * deprecation warnings once JLS11 is deprecated
+	 * @since 3.14 
+	 */
+	/*package*/ static final int JLS11_INTERNAL = JLS11;
+
 	/*
 	 * Must not collide with a value for ICompilationUnit constants
 	 */
@@ -315,6 +343,20 @@
 		ASTConverter converter = ASTConverter.getASTConverter(options,isResolved,monitor); 
 		// End AspectJ Extension
 		AST ast = AST.newAST(level);
+		String sourceModeSetting = (String) options.get(JavaCore.COMPILER_SOURCE);
+		long sourceLevel = CompilerOptions.versionToJdkLevel(sourceModeSetting);
+		if (sourceLevel == 0) {
+			// unknown sourceModeSetting
+			sourceLevel = ClassFileConstants.JDK1_3;
+		}
+		ast.scanner.sourceLevel = sourceLevel;
+		String compliance = (String) options.get(JavaCore.COMPILER_COMPLIANCE);
+		long complianceLevel = CompilerOptions.versionToJdkLevel(compliance);
+		if (complianceLevel == 0) {
+			// unknown sourceModeSetting
+			complianceLevel = sourceLevel;
+		}
+		ast.scanner.complianceLevel = complianceLevel;
 		int savedDefaultNodeFlag = ast.getDefaultNodeFlag();
 		ast.setDefaultNodeFlag(ASTNode.ORIGINAL);
 		BindingResolver resolver = null;
@@ -802,6 +844,20 @@
 						null/*taskPriorities*/,
 						true/*taskCaseSensitive*/);
 				break;	
+			case JLS11_INTERNAL :
+				this.apiLevel = level;
+				// initialize a scanner
+				long compliance = ClassFileConstants.getComplianceLevelForJavaVersion(ClassFileConstants.MAJOR_VERSION_11);
+				this.scanner = new Scanner(
+						true /*comment*/,
+						true /*whitespace*/,
+						false /*nls*/,
+						compliance /*sourceLevel*/,
+						compliance /*complianceLevel*/,
+						null/*taskTag*/,
+						null/*taskPriorities*/,
+						true/*taskCaseSensitive*/);
+				break;	
 			default:
 				throw new IllegalArgumentException("Unsupported JLS level"); //$NON-NLS-1$
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.java
index 542c76b..8ed760c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTConverter.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.java
index 5507868..83efde6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTMatcher.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.java
index 0f48d40..fca585d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTNode.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -2054,6 +2057,21 @@
 		}
 	}
 	/**
+     * Checks that this AST operation is not used when
+     * building JLS2, JLS3, JLS4, JLS8, JLS9 or JLS10 level ASTs.
+     * <p>
+     * Use this method to prevent access to new properties that have been added in JLS11
+     * </p>
+     *
+	 * @exception UnsupportedOperationException if this operation is used below JLS11
+	 * @since 3.14 
+	 */
+	final void unsupportedBelow11() {
+		if (this.ast.apiLevel < AST.JLS11_INTERNAL) {
+			throw new UnsupportedOperationException("Operation only supported in ASTs with level JLS11 and above"); //$NON-NLS-1$
+		}
+	}
+	/**
      * Checks that this AST operation is only used when
      * building JLS2 level ASTs.
      * <p>
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.java
index 44e5bea..35bb30f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTParser.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2004, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -268,6 +271,7 @@
 			case AST.JLS8_INTERNAL:
 			case AST.JLS9_INTERNAL:
 			case AST.JLS10_INTERNAL:
+			case AST.JLS11_INTERNAL:
 				break;
 			default:
 				throw new IllegalArgumentException();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.java
index cc30b14..9cbc1a4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRecoveryPropagator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.java
index cd63417..4a1c183 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.java
index ff80ae2..e69c4dd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTSyntaxErrorPropagator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.java
index cb31d6d..64dcd14 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ASTVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.java
index 4041b8a..f39f1e8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AbstractTypeDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.java
index 1adb58a..911e612 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotatableType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Annotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Annotation.java
index bab5699..7e7ea13 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Annotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Annotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.java
index 741c9e4..bc2f87d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 BEA Systems, Inc, IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.java
index ab2e996..3c0cf51 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.java
index 04905fb..8351ad4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnnotationTypeMemberDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.java
index 890ef82..2697f26 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AnonymousClassDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.java
index a861dd5..0af7a93 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.java
index a3f73ab..acc362f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayCreation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.java
index 177b3a0..95ecc7f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.java
index f6a5aa1..f27f238 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ArrayType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.java
index 1a55a94..04e2647 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/AssertStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Assignment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Assignment.java
index a843bb0..707365d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Assignment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Assignment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.java
index e2918ed..932d8ab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.java
index 793be65..f3d6730 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BindingResolver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Block.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Block.java
index 76e53c2..186ab7a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Block.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Block.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.java
index f709fb3..35f48c6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BlockComment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.java
index 11424e6..779c17d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BodyDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.java
index 1f62672..6a93d54 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BooleanLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.java
index aaeab38..f0c134b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/BreakStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.java
index 4c36944..1468557 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CastExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.java
index 8b56b61..8d6339d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CatchClause.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.java
index dd9d370..2b43074 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CharacterLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.java
index bbe9607..b789050 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildListPropertyDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.java
index 94317f1..105f61e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ChildPropertyDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.java
index 4f85c4c..d7dc0e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ClassInstanceCreation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Comment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Comment.java
index 65917ef..693f882 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Comment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Comment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.java
index e9b9928..58e3853 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.java
index f23445d..ac9bf2b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CompilationUnitResolver.java
@@ -1,9 +1,13 @@
+// AspectJ
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -27,6 +31,7 @@
 import org.aspectj.org.eclipse.jdt.core.ICompilationUnit;
 import org.aspectj.org.eclipse.jdt.core.IJavaElement;
 import org.aspectj.org.eclipse.jdt.core.IJavaProject;
+import org.aspectj.org.eclipse.jdt.core.JavaCore;
 import org.aspectj.org.eclipse.jdt.core.JavaModelException;
 import org.aspectj.org.eclipse.jdt.core.WorkingCopyOwner;
 import org.aspectj.org.eclipse.jdt.core.compiler.CategorizedProblem;
@@ -40,6 +45,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.batch.FileSystem.Classpath;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRestriction;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.INameEnvironment;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.ISourceType;
@@ -294,6 +300,20 @@
 		// new code:
 		AST ast = ASTParser.getAST(apiLevel);
 		// End AspectJ Extension
+				String sourceModeSetting = (String) options.get(JavaCore.COMPILER_SOURCE);
+		long sourceLevel = CompilerOptions.versionToJdkLevel(sourceModeSetting);
+		if (sourceLevel == 0) {
+			// unknown sourceModeSetting
+			sourceLevel = ClassFileConstants.JDK1_3;
+		}
+		ast.scanner.sourceLevel = sourceLevel;
+		String compliance = (String) options.get(JavaCore.COMPILER_COMPLIANCE);
+		long complianceLevel = CompilerOptions.versionToJdkLevel(compliance);
+		if (complianceLevel == 0) {
+			// unknown sourceModeSetting
+			complianceLevel = sourceLevel;
+		}
+		ast.scanner.complianceLevel = complianceLevel;
 		ast.setDefaultNodeFlag(ASTNode.ORIGINAL);
 		CompilationUnit compilationUnit = null;
 		// AspectJ Extension - use the factory
@@ -1025,6 +1045,11 @@
 				}
 				sourceUnits[count++] = new org.aspectj.org.eclipse.jdt.internal.compiler.batch.CompilationUnit(contents, sourceUnitPath, encoding);
 			}
+			if (count < length) {
+				org.aspectj.org.eclipse.jdt.internal.compiler.env.ICompilationUnit[] newArray = new org.aspectj.org.eclipse.jdt.internal.compiler.env.ICompilationUnit[count];
+				System.arraycopy(sourceUnits, 0, newArray, 0, count);
+				sourceUnits = newArray;
+			}
 			beginToCompile(sourceUnits, bindingKeys);
 			// process all units (some more could be injected in the loop by the lookup environment)
 			for (int i = 0; i < this.totalUnits; i++) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.java
index a8185f3..bc34ed8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConditionalExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.java
index c649cc0..331fd73 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ConstructorInvocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.java
index 2d6e999..baef49f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ContinueStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.java
index 2a7731d..841be2a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/CreationReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.java
index 3da82db..8e0331a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultASTVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.java
index 64f4edf..3fe0286 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultBindingResolver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.java
index 6424afe..5d5b126 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultCommentMapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.java
index 73620c8..29bebe3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DefaultValuePairBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2013 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Dimension.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Dimension.java
index 5b65ed9..1cc7416 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Dimension.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Dimension.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.java
index b47122f..b07b5e2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DoStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.java
index 2ffd735..33bff60 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/DocCommentParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.java
index 6e244c4..a7c86a5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EmptyStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.java
index fe02c79..82d86b1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnhancedForStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.java
index 27c5a30..db59fcc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumConstantDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.java
index 24d1136..4e43957 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/EnumDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.java
index 1354c5d..19e29da 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExportsDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Expression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Expression.java
index e2a399f..1613ba7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Expression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Expression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.java
index 97d3d02..dd72af9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionMethodReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.java
index 2d880c0..29728e0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ExpressionStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.java
index 5ec69c1..5eac9d3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.java
index d1eecae..a71a273 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FieldDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.java
index f5be86f..bc5a6bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/FileASTRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.java
index fbda27a..d0feb7e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ForStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.java
index f3f2b1d..8531688 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IAnnotationBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2008 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IBinding.java
index 8f290a3..b2272f0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IDocElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IDocElement.java
index 6d2afd8..393ddda 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IDocElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IDocElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.java
index 894961f..f8681dc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IExtendedModifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.java
index f79a002..013f79f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMemberValuePairBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2008 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.java
index 810c14f..23a256e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.java
index 2ad4e0f..884ddce 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IModuleBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.java
index d5d0faa..99d6798 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IPackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.java
index fcd9099..bd0736f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ITypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.java
index d35a728..baa4f2b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.java
index 7560b59..9398dab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IfStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.java
index ff1429c..9fd5943 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ImportDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.java
index 9d03678..51608c3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InfixExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Initializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Initializer.java
index 5825ff8..9d4a228 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Initializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Initializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.java
index a7d42e5..a6e9227 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InstanceofExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.java
index ecc109a..2f01b94 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/InternalASTRewrite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.java
index 33ebc67..b8a5c23 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/IntersectionType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.java
index 467ef23..52ece70 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Javadoc.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.java
index b087806..99a7e44 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LabeledStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.java
index 3ea873f..2fba7b1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LambdaExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LineComment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LineComment.java
index 8d29eca..ea2eed1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LineComment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/LineComment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.java
index 1686f71..dfccb45 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MarkerAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.java
index 95dd3b2..3446f4c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberRef.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.java
index dcac201..40d22f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.java
index 30ea0b4..48fbe7f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MemberValuePairBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Message.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Message.java
index e40949b..bfc8643 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Message.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Message.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.java
index 6f61a55..33cf1cc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.java
index 0bf4739..a5b7d9b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.java
index 22988ad..52ed2b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodInvocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.java
index 46b3f60..ce6814e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRef.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.java
index 263e6e7..527a4f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodRefParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.java
index 123df3e..b58ab0f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/MethodReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Modifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Modifier.java
index 6c0d4f4..b4afe73 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Modifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Modifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.java
index f246976..ecb5b3b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.java
index e7b2c09..dd422bc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.java
index 5d258b9..3421aa5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.java
index 8e5bb73..d333ea3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModuleModifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.java
index 307dfd0..4f32f45 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ModulePackageAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Name.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Name.java
index bb424a1..627aafc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Name.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Name.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.java
index 55c758d..f608607 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameEnvironmentWithProgress.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2010, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.java
index 2d1a2d0..2357784 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NameQualifiedType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.java
index d78481d..651a418 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeEventHandler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.java
index fa2edf3..e5dc16a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.java
index e393d3e..8d7ba68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NodeSearcher.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.java
index ec4ea79..bc6d887 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NormalAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.java
index 9adb6dc..b04ca9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NullLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.java
index 112db13..cae5574 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/NumberLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.java
index b4f0f12..7032db5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/OpensDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.java
index 2480b24..cd6401f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.java
index 757f040..fe180b2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PackageDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.java
index 1eea787..fa7200c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParameterizedType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2003, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.java
index 33792b7..3ccf3f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ParenthesizedExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.java
index 2958a29..d3135d3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PostfixExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.java
index 30853f7..1c3fa6e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrefixExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.java
index 15651de..2809895 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/PrimitiveType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.java
index 1326145..e52b0bd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ProvidesDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.java
index 448148d..12fb268 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.java
index 0b74eff..7661e05 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/QualifiedType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2003, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.java
index 8e58c12..4a140bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredPackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.java
index cb8217a..5c528b7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.java
index d6bc647..7811aa7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RecoveredVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.java
index 91138fb..c0f0749 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/RequiresDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.java
index 09a388e..e0c42dc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ReturnStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.java
index 0742506..968ba4b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -156,7 +159,11 @@
 			if (get) {
 				return isVar();
 			} else {
+				if (Long.compare(this.ast.scanner.complianceLevel, ClassFileConstants.JDK10) < 0) {
+					setVar(false);
+				} else {
 				setVar(value);
+				}
 				return false;
 			}
 		}
@@ -174,7 +181,7 @@
 		SimpleName result = new SimpleName(target);
 		result.setSourceRange(getStartPosition(), getLength());
 		result.setIdentifier(getIdentifier());
-		if (this.ast.apiLevel >= AST.JLS10_INTERNAL) {
+		if (this.ast.apiLevel >= AST.JLS10_INTERNAL && Long.compare(this.ast.scanner.complianceLevel, 10) >= 0) {
 			result.setVar(isVar());
 		}
 		return result;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.java
index 74ab90d..89c5cd2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimplePropertyDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.java
index 0e50faa..a0eb1ef 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SimpleType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -14,6 +17,8 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
+
 /**
  * Type node for a named class type, a named interface type, or a type variable.
  * <pre>
@@ -238,6 +243,8 @@
 	@Override
 	public boolean isVar() {
 		unsupportedBelow10();
+		if (Long.compare(this.ast.scanner.complianceLevel, ClassFileConstants.JDK10) < 0)
+			return false;
 		if (this.typeName == null) getName();
 		String qName = this.typeName.getFullyQualifiedName();
 		return qName != null && qName.equals("var"); //$NON-NLS-1$
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.java
index 70ef82b..f5ac1e3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleMemberAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.java
index bb0cc99..687344b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SingleVariableDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Statement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Statement.java
index 0bdc9e9..e60e104 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Statement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Statement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.java
index 11453c9..7332b66 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StringLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.java
index 80ce598..e99b8d7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/StructuralPropertyDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.java
index 67016a3..c57e8d4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperConstructorInvocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.java
index b425cff..f3c8dfc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperFieldAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.java
index 08aa68d..31bccaa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodInvocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.java
index 4e819e8..d38507b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SuperMethodReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.java
index 42da861..4a9e6ce 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchCase.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.java
index cc92763..33f280a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SwitchStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.java
index 705311d..6f4835d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/SynchronizedStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TagElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TagElement.java
index 54a31ac..1d9cb5e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TagElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TagElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TextElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TextElement.java
index 898847a..76cae35 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TextElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TextElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.java
index 1f65b1d..60509eb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThisExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.java
index 1a76724..2edff56 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/ThrowStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.java
index 771beab..6f9cd9b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TryStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Type.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Type.java
index c6d88fd..3a935ca 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Type.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/Type.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.java
index 187570e..f8d560c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.java
index acfc0aa..9134571 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.java
index 3cccd66..3ff7cc0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeDeclarationStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.java
index 39aab2d..56fba0e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.java
index 5572bc0..b6290e1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeMethodReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.java
index 77c2d17..886a197 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/TypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2003, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UnionType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UnionType.java
index 9d5a76c..b8e7503 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UnionType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UnionType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.java
index 61edd46..97ae047 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/UsesDirective.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.java
index 39183bc..1712228 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.java
index 8d566b5..11b6344 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.java
index bad72f3..b118174 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.java
index 8b3f723..8d7421c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationFragment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.java
index cfa88ad..bc4de8e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/VariableDeclarationStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.java
index 633d774..a145379 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WhileStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.java
index ce18b6a..760065c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/WildcardType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2003, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.java
index 90912e4..8458261 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ASTRewrite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.java
index 5e45b3f..6a6677d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ITrackedNodePosition.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.java
index 5928268..66da51d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ImportRewrite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -1312,7 +1315,7 @@
 
 		CompilationUnit usedAstRoot= this.astRoot;
 		if (usedAstRoot == null) {
-			ASTParser parser= ASTParser.newParser(AST.JLS10);
+			ASTParser parser= ASTParser.newParser(AST.JLS11);
 			parser.setSource(this.compilationUnit);
 			parser.setFocalPosition(0); // reduced AST
 			parser.setResolveBindings(false);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.java
index a083928..f75cd6a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/ListRewrite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.java
index 6f0f441..0390d08 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/dom/rewrite/TargetSourceRangeComputer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.java
index facabee..310d031 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/ICodeSnippetRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.java
index 7961b5a..25fa13f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IEvaluationContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.java
index 3d35fc1..cf7145e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/eval/IGlobalVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.java
index a62836c..eb6c6e9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.java
index 116b407..d5f972f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/CodeFormatterApplication.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  *  Copyright (c) 2005, 2016 IBM Corporation and others.
- *  All rights reserved. This program and the accompanying materials
- *  are made available under the terms of the Eclipse Public License v1.0
+ *
+ *  This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License 2.0
  *  which accompanies this distribution, and is available at
- *  http://www.eclipse.org/legal/epl-v10.html
+ *  https://www.eclipse.org/legal/epl-2.0/
+ *
+ *  SPDX-License-Identifier: EPL-2.0
  * 
  *  Contributors:
  *     Ben Konrath <ben@bagu.org> - initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.java
index 76c5878..202e51e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/DefaultCodeFormatterConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation  - initial API and implementation
@@ -58,7 +61,7 @@
 	/**
 	 * <pre>
 	 * FORMATTER / Option to align type members of a type declaration on column
-	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.formatter.align_type_members_on_columns"
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.align_type_members_on_columns"
 	 *     - possible values:   { TRUE, FALSE }
 	 *     - default:           FALSE
 	 * </pre>
@@ -70,7 +73,49 @@
 
 	/**
 	 * <pre>
-	 * FORMATTER / Option to align groups of members independently if they are separated by a certain number of blank lines
+	 * FORMATTER / Option to align variable declarations on column
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_ALIGN_VARIABLE_DECLARATIONS_ON_COLUMNS = JavaCore.PLUGIN_ID + ".formatter.align_variable_declarations_on_columns";	 //$NON-NLS-1$
+	
+	/**
+	 * <pre>
+	 * FORMATTER / Option to align assignment statements on column
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_ALIGN_ASSIGNMENT_STATEMENTS_ON_COLUMNS = JavaCore.PLUGIN_ID + ".formatter.align_assignment_statements_on_columns";	 //$NON-NLS-1$
+	
+	/**
+	 * <pre>
+	 * FORMATTER / Option to use spaces when aligning members, independent of selected tabulation character
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.align_with_spaces"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_ALIGN_WITH_SPACES = JavaCore.PLUGIN_ID + ".formatter.align_with_spaces";	 //$NON-NLS-1$
+
+	/**
+	 * <pre>
+	 * FORMATTER / Option to affect aligning on columns: groups of items are aligned independently
+	 * if they are separated by at least the selected number of blank lines.
+	 * Note: since 3.15 the 'fields' part is a (potentially misleading) residue as this option
+	 * affects other types of aligning on columns as well.
 	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines"
 	 *     - possible values:   "&lt;n&gt;", where n is a positive integer
 	 *     - default:           {@code Integer.MAX_VALUE}
@@ -180,6 +225,17 @@
 	public static final String FORMATTER_ALIGNMENT_FOR_COMPACT_IF = JavaCore.PLUGIN_ID + ".formatter.alignment_for_compact_if";	 //$NON-NLS-1$
 	/**
 	 * <pre>
+	 * FORMATTER / Option for alignment of compact loops
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.alignment_for_compact_loops"
+	 *     - possible values:   values returned by <code>createAlignmentValue(boolean, int, int)</code> call
+	 *     - default:           createAlignmentValue(false, WRAP_ONE_PER_LINE, INDENT_BY_ONE)
+	 * </pre>
+	 * @see #createAlignmentValue(boolean, int, int)
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_ALIGNMENT_FOR_COMPACT_LOOP = JavaCore.PLUGIN_ID + ".formatter.alignment_for_compact_loops";	 //$NON-NLS-1$
+	/**
+	 * <pre>
 	 * FORMATTER / Option for alignment of conditional expression
 	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.alignment_for_conditional_expression"
 	 *     - possible values:   values returned by <code>createAlignmentValue(boolean, int, int)</code> call
@@ -3920,6 +3976,43 @@
 
 	/**
 	 * <pre>
+	 * FORMATTER / Option to keep a simple 'for' loop body on the same line
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_KEEP_SIMPLE_FOR_BODY_ON_SAME_LINE = JavaCore.PLUGIN_ID + ".formatter.keep_simple_for_body_on_same_line";//$NON-NLS-1$
+	/**
+	 * <pre>
+	 * FORMATTER / Option to keep a simple 'while' loop body on the same line
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_KEEP_SIMPLE_WHILE_BODY_ON_SAME_LINE = JavaCore.PLUGIN_ID + ".formatter.keep_simple_while_body_on_same_line";//$NON-NLS-1$
+	/**
+	 * <pre>
+	 * FORMATTER / Option to keep a simple 'do-while' loop body on the same line
+	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line"
+	 *     - possible values:   { TRUE, FALSE }
+	 *     - default:           FALSE
+	 * </pre>
+	 * @see #TRUE
+	 * @see #FALSE
+	 * @since 3.15
+	 */
+	public static final String FORMATTER_KEEP_SIMPLE_DO_WHILE_BODY_ON_SAME_LINE = JavaCore.PLUGIN_ID + ".formatter.keep_simple_do_while_body_on_same_line";//$NON-NLS-1$
+
+	/**
+	 * <pre>
 	 * FORMATTER / Option to specify the length of the page. Beyond this length, the formatter will try to split the code
 	 *     - option id:         "org.aspectj.org.eclipse.jdt.core.formatter.lineSplit"
 	 *     - possible values:   "&lt;n&gt;", where n is zero or a positive integer
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.java
index 3559d16..f9dc812 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/IndentManipulation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
index 7c82929..74b1652 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/formatter/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2006, 2011 Ben Konrath <ben@bagu.org>
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     Ben Konrath <ben@bagu.org> - initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.java
index 9342425..10de837 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.java
index 3fb115f..f746222 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/JavaIndexerApplication.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  *  Copyright (c) 2011, 2013 IBM Corporation and others.
- *  All rights reserved. This program and the accompanying materials
- *  are made available under the terms of the Eclipse Public License v1.0
+ *
+ *  This program and the accompanying materials
+ *  are made available under the terms of the Eclipse Public License 2.0
  *  which accompanies this distribution, and is available at
- *  http://www.eclipse.org/legal/epl-v10.html
+ *  https://www.eclipse.org/legal/epl-2.0/
+ *
+ *  SPDX-License-Identifier: EPL-2.0
  * 
  *  Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/messages.properties
index b9e5627..80693ac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/index/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2011 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.java
index dddef96..bc87ba5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.java
index cbf2ea3..f306c8d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/DOMFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.java
index bc5927d..7af4e57 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.java
index 039bccf..ac47e5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.java
index 904a0a8..bc6b8f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.java
index 64d2766..9ba0068 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMImport.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.java
index 60bffd9..bbbada5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.java
index a239f3d..8b324b0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMember.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.java
index 1e2801b..58546be 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.java
index 49352ed..4411018 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMNode.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.java
index 38305f8..b4e04c9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMPackage.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.java
index 07c6e4d..9e68006 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/jdom/IDOMType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.java
index c384ca7..c3d232e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/provisional/JavaModelAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software SE, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.java
index b48bcc5..3405d92 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.java
index 7134724..8bb2655 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/FieldReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.java
index 707b915..9790573 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.java
index 336b1ea..56c5e40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchResultCollector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.java
index bde628d..b877658 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/IJavaSearchScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ISearchPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ISearchPattern.java
index 149bd48..82c0cb1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ISearchPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ISearchPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.java
index 9812e41..f36210b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ITypeNameRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.java
index 5edee41..3a9b3f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.java
index 6f2112c..f2eb30f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/LocalVariableReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.java
index 5d29b74..6417192 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.java
index 18b8b12..166ddd1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.java
index 1faf719..cd32d16 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameMatchRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.java
index 5c4e772..e5edb7d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodNameRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.java
index 4dab228..9cf6ca2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/MethodReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.java
index d29115c..d8f6929 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.java
index 32a7445..135fe84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ModuleReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.java
index 1051e2f..f7f559a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.java
index 137bdc0..909b24e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/PackageReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.java
index 563b285..531e908 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/ReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.java
index 0892ced..4296d6f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchDocument.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.java
index d6fb83d..451798a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchEngine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.java
index e1d4432..9e2d560 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.java
index 0f62394..68c6005 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchParticipant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.java
index 1c5fe22..7af1412 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.java
index 0ef418c..7b94a6d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/SearchRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.java
index 0975f55..cfd068b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.java
index 48c8a29..cd23ab0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.java
index 848cced..4dc8bb0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameMatchRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.java
index 19fc4e4..e6ff554 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeNameRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.java
index 8802684..c4a6b8b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterDeclarationMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.java
index 509b342..f4bcfbc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeParameterReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.java
index cb2d06d..12ee6e6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/search/TypeReferenceMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.java
index d931a3e..6be2ef7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ByteCodeVisitorAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.java
index a429648..28b9076 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFileBytesDisassembler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.java
index f571722..9e207d2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ClassFormatException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.java
index b52e7f4..c2ba659 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/CompilationUnitSorter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.java
index 5aa9b5b..fef4884 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ExternalAnnotationUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.java
index ec622a6..2e9c0e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.java
index 2c7f633..112cc12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.java
index d1ae713..3e04546 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationComponentValue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.java
index 884f7f2..9f6f972 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAnnotationDefaultAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.java
index 277e45a..0f87810 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IAttributeNamesConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -187,4 +190,17 @@
 	 * @since 3.14
 	 */
 	char[] MODULE_MAIN_CLASS = "ModuleMainClass".toCharArray(); //$NON-NLS-1$
+	
+	/**
+	 * "NestHost" attribute (JVMS 11).
+	 * @since 3.16 
+	 */
+	char[] NEST_HOST = "NestHost".toCharArray(); //$NON-NLS-1$
+
+	/**
+	 * "NestMembers" attribute (JVMS 11).
+	 * @since 3.16
+	 */
+	char[] NEST_MEMBERS = "NestMembers".toCharArray(); //$NON-NLS-1$
+
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.java
index 6123f1a..1418e3a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.java
index c6edb92..ec50707 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBootstrapMethodsEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.java
index 55c84eb..ce15e70 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IBytecodeVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.java
index bf2b365..06d7c9b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.java
index b9f20e7..68f79b0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileDisassembler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.java
index dc0d00d..e632396 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IClassFileReader.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -114,6 +117,16 @@
 	IInnerClassesAttribute getInnerClassesAttribute();
 
 	/**
+	 * Answer back the nest members attribute of this .class file, null if none.
+	 *
+	 * @return the nest members attribute of this .class file, null if none
+	 * @since 3.16
+	 */
+	default INestMembersAttribute getNestMembersAttribute() {
+		return null;
+	}
+
+	/**
 	 * Answer back the array of method infos of this .class file,
 	 * an empty array if none.
 	 *
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.java
index b21bcac..436efe0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ICodeAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.java
index 5af51ae..9f50386 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPool.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -39,7 +42,9 @@
 	 *
 	 * <p>The return value can be an instance of {@link IConstantPoolEntry2} if the value returned
 	 * by {@link #getEntryKind(int)} is either {@link IConstantPoolConstant#CONSTANT_MethodHandle},
-	 * {@link IConstantPoolConstant#CONSTANT_MethodType} or {@link IConstantPoolConstant#CONSTANT_InvokeDynamic}.</p>
+	 * {@link IConstantPoolConstant#CONSTANT_MethodType},
+	 * {@link IConstantPoolConstant#CONSTANT_InvokeDynamic},
+	 * {@link IConstantPoolConstant#CONSTANT_Dynamic}.</p>
 	 *
 	 * <p>The return value can be an instance of {@link IConstantPoolEntry3} if the value returned
 	 * by {@link #getEntryKind(int)} is either {@link IConstantPoolConstant#CONSTANT_Module}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.java
index 60dd99a..eb5261b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -41,6 +44,11 @@
 	 * @since 3.8
 	 */
 	int CONSTANT_InvokeDynamic = 18;
+	/**
+	 * proposed new name in JVMLS11
+	 * @since 3.16
+	 */
+	int CONSTANT_DynamicCallSite = CONSTANT_InvokeDynamic; 
 
 	/**
 	 * @since 3.14
@@ -50,6 +58,11 @@
 	 * @since 3.14
 	 */
 	int CONSTANT_Package = 20;
+	/**
+	 * For the proposed section of JVMLS11 4.4.13 The CONSTANT_Dynamic_info Structure
+	 * @since 3.16 
+	 */
+	int CONSTANT_Dynamic = 17;
 
 	int CONSTANT_Methodref_SIZE = 5;
 	int CONSTANT_Class_SIZE = 3;
@@ -76,6 +89,10 @@
 	int CONSTANT_InvokeDynamic_SIZE = 5;
 
 	/**
+	 * @since 3.16 
+	 */
+	int CONSTANT_Dynamic_SIZE = 5;
+	/**
 	 * @since 3.14
 	 */
 	int CONSTANT_Module_SIZE = 3;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.java
index e4e3033..398ef71 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -65,6 +68,7 @@
 	 * @see IConstantPoolConstant#CONSTANT_Methodref
 	 * @see IConstantPoolConstant#CONSTANT_InterfaceMethodref
 	 * @see IConstantPoolConstant#CONSTANT_InvokeDynamic
+	 * @see IConstantPoolConstant#CONSTANT_Dynamic
 	 */
 	int getNameAndTypeIndex();
 
@@ -181,6 +185,7 @@
 	 * @see IConstantPoolConstant#CONSTANT_Methodref
 	 * @see IConstantPoolConstant#CONSTANT_InterfaceMethodref
 	 * @see IConstantPoolConstant#CONSTANT_InvokeDynamic
+	 * @see IConstantPoolConstant#CONSTANT_Dynamic
 	 */
 	char[] getMethodName();
 
@@ -212,6 +217,7 @@
 	 * @see IConstantPoolConstant#CONSTANT_InterfaceMethodref
 	 * @see IConstantPoolConstant#CONSTANT_MethodType
 	 * @see IConstantPoolConstant#CONSTANT_InvokeDynamic
+	 * @see IConstantPoolConstant#CONSTANT_Dynamic
 	 */
 	char[] getMethodDescriptor();
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.java
index 4f47808..120624a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry2.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2011, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -54,6 +57,7 @@
 	 *
 	 * @return the reference kind. This value is set only when decoding a MethodHandle entry.
 	 * @see IConstantPoolConstant#CONSTANT_InvokeDynamic
+	 * @see IConstantPoolConstant#CONSTANT_Dynamic
 	 */
 	int getBootstrapMethodAttributeIndex();
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.java
index 325fb71..52a44ab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantPoolEntry3.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.java
index 155f225..f672858 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IConstantValueAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.java
index 75669bb..0619114 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IEnclosingMethodAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.java
index 28b677b..ea9b62b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.java
index 18862fb..20cebcd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExceptionTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.java
index 24ed34a..abb236c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotationConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotationConstants.java
index a69ce4d..5e15906 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotationConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IExtendedAnnotationConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.java
index 7643a70..7fdf579 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IFieldInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.java
index 2a5bb10..adf531b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.java
index 2473c52..ea3d5b2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IInnerClassesAttributeEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.java
index 9310db7..09c45e8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILineNumberAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.java
index e32e1fe..cd669fd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.java
index 54aeff9..c41bdac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableReferenceInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.java
index 4462f22..6cc892f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.java
index 4f19861..4ffa49d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.java
index be5bf61..6caab84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ILocalVariableTypeTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.java
index 6cbf8b2..77b859d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.java
index becccae..71bcd5c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IMethodParametersAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 Jesper Steen Moeller and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     Jesper Steen Moeller - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModifierConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModifierConstants.java
index d5cd0bc..af16526 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModifierConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModifierConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.java
index 380337e..1c6d606 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.java
index c284be5..2b1a180 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModuleMainClassAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.java
index 96dea6d..30b6099 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IModulePackagesAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.java
new file mode 100644
index 0000000..f8cddd7
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestHostAttribute.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.core.util;
+
+/**
+ * Description of a nest host attribute as described in the JVM
+ * specifications.
+ * @since 3.16 
+ */
+public interface INestHostAttribute {
+	/**
+	 * Answer back the class name as specified
+	 * in the JVM specifications.
+	 *
+	 * @return the class name as specified
+	 * in the JVM specifications
+	 */
+	char[] getNestHostName();
+
+	/**
+	 * Answer back the class name index.
+	 *
+	 * @return the class name index
+	 */
+	int getNestHostIndex();
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.java
new file mode 100644
index 0000000..0494639
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMemberAttributeEntry.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.core.util;
+
+/**
+ * Description of a nest host attribute as described in the JVM
+ * specifications.
+ * @since 3.16 
+ */
+public interface INestMemberAttributeEntry {
+
+	/**
+	 * Answer back the nest member name as specified
+	 * in the JVM specifications.
+	 *
+	 * @return the nest member name as specified
+	 * in the JVM specifications
+	 */
+	char[] getNestMemberName();
+
+	/**
+	 * Answer back the nest member name index.
+	 *
+	 * @return the nest memeber name index
+	 */
+	int getNestMemberIndex();
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.java
new file mode 100644
index 0000000..bee111f
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/INestMembersAttribute.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.core.util;
+
+/**
+ * Description of nest members attribute as described in the JVM
+ * specifications.
+ *
+ * @since 3.16 
+ */
+public interface INestMembersAttribute extends IClassFileAttribute {
+
+	/**
+	 * Answer back the number of nest members as specified in
+	 * the JVM specifications.
+	 *
+	 * @return the number of nest members as specified in
+	 * the JVM specifications
+	 */
+	int getNumberOfNestMembers();
+
+	/**
+	 * Answer back the array of nest member attribute entries as specified in
+	 * the JVM specifications, or an empty array if none.
+	 *
+	 * @return the array of nest member attribute entries as specified in
+	 * the JVM specifications, or an empty array if none
+	 */
+	INestMemberAttributeEntry[] getNestMemberAttributesEntries();
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IOpcodeMnemonics.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IOpcodeMnemonics.java
index 41a6ba0..d082ea3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IOpcodeMnemonics.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IOpcodeMnemonics.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.java
index dbb751e..ce0aa13 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IPackageVisibilityInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.java
index daf5c2b..eabbfc3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IParameterAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.java
index 9f242d0..cabde1a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IProvidesInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.java
index 42e7379..2d23989 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRequiresInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.java
index 76b6a69..ec1dd77 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.java
index bb8d06c..6ddcaa2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleParameterAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.java
index a3764b8..fd7692b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeInvisibleTypeAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.java
index 3f3a01b..33c81d7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.java
index 8e3af5a..6ea89ac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleParameterAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.java
index 3503647..49dfbbc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IRuntimeVisibleTypeAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.java
index 93316f4..0a799a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISignatureAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.java
index 1cf44ff..643d315 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/ISourceAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.java
index 8b8d115..2093295 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.java
index ffdab74..4851462 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapFrame.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.java
index eb74df3..aee464a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IStackMapTableAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.java
index 2dab505..a02c37b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/IVerificationTypeInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.java
index 8b6e743..ff36948 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/core/util/OpcodeStringValues.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/AntAdapterMessages.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/AntAdapterMessages.java
index 6efb699..d2b56e9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/AntAdapterMessages.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/AntAdapterMessages.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/messages.properties
index 9cb9be2..bf307a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/antadapter/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2011 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.java
index 2d3e531..2aee111 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionElementNotifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.java
index fd7339e..d720682 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionEngine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Timo Kinnunen - Contributions for bug 377373 - [subwords] known limitations with JDT 3.8
@@ -16,6 +19,7 @@
 package org.aspectj.org.eclipse.jdt.internal.codeassist;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.LinkedHashSet;
@@ -2450,7 +2454,7 @@
 					// no need for field initialization
 					this.problemReporter,
 					compilationResult);
-				if (compilationUnit.types != null)
+				if (compilationUnit != null && compilationUnit.types != null)
 					typeDeclaration = compilationUnit.types[0];
 			} else {
 				compilationUnit = new CompilationUnitDeclaration(this.problemReporter, compilationResult, 0);
@@ -4072,6 +4076,7 @@
 				BinaryExpression binaryExpression = (BinaryExpression) parent;
 				switch(operator) {
 					case OperatorIds.EQUAL_EQUAL :
+					case OperatorIds.NOT_EQUAL :
 						// expected type is not relevant in this case
 						TypeBinding binding = binaryExpression.left.resolvedType;
 						if (binding != null) {
@@ -9766,27 +9771,42 @@
 				!this.requestor.isIgnored(CompletionProposal.KEYWORD) &&
 				((scope instanceof MethodScope && !((MethodScope)scope).isStatic)
 				|| ((methodScope = scope.enclosingMethodScope()) != null && !methodScope.isStatic))) {
-			if (token.length > 0) {
-				findKeywords(token, new char[][]{Keywords.THIS, Keywords.SUPER}, true, false);
-			} else {
-				int relevance = computeBaseRelevance();
-				relevance += computeRelevanceForResolution();
-				relevance += computeRelevanceForInterestingProposal();
-				relevance += computeRelevanceForCaseMatching(this.completionToken, Keywords.THIS);
-				relevance += computeRelevanceForRestrictions(IAccessRule.K_ACCESSIBLE); // no access restriction for keywords
-				relevance += R_NON_INHERITED;
-
-				this.noProposal = false;
-				if (!this.requestor.isIgnored(CompletionProposal.KEYWORD)) {
-					InternalCompletionProposal proposal =  createProposal(CompletionProposal.KEYWORD, this.actualCompletionPosition);
-					proposal.setName(Keywords.THIS);
-					proposal.setCompletion(Keywords.THIS);
-					proposal.setReplaceRange(this.startPosition - this.offset, this.endPosition - this.offset);
-					proposal.setTokenRange(this.tokenStart - this.offset, this.tokenEnd - this.offset);
-					proposal.setRelevance(relevance);
-					this.requestor.accept(proposal);
-					if (DEBUG) {
-						this.printDebug(proposal);
+			if (token.length >= 0) {
+				boolean isInterface = false;
+				if (receiverType != null) {
+					isInterface = receiverType.isInterface();
+				}
+				if (!isInterface) {
+					findKeywords(token, new char[][] { Keywords.THIS, Keywords.SUPER }, true, false);
+				} else {
+					boolean isEqual = false;
+					char[] enclosingSourceName = null;
+					if(scope.enclosingSourceType() != null)
+						enclosingSourceName = scope.enclosingSourceType().sourceName;
+					char[] receiverSourceName = null;
+					if (receiverType != null) {
+						receiverSourceName = receiverType.sourceName;
+					}
+					if( enclosingSourceName !=null & receiverSourceName !=null)
+						isEqual = Arrays.equals(enclosingSourceName, receiverSourceName);
+					if(isEqual) {
+						findKeywords(token, new char[][] { Keywords.THIS }, true, false);
+					} else {
+						// Check if the enclosing source implements this interface then show super
+						if (scope.enclosingSourceType() != null) {
+							SourceTypeBinding src = scope.enclosingSourceType();
+							ReferenceBinding[] superInterfaces = src.superInterfaces();
+							boolean implemented = false;
+							for (ReferenceBinding referenceBinding : superInterfaces) {
+								if (Arrays.equals(referenceBinding.sourceName, receiverSourceName)) {
+									implemented = true;
+									break;
+								}
+							}
+							if (implemented) {
+								findKeywords(token, new char[][] { Keywords.SUPER }, true, false);
+							}
+						}
 					}
 				}
 			}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.java
index 4394a1e..66030a4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.java
index 9b8fb56..f13e734 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/CompletionUnitStructureRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.java
index 7d8fb47..a6de3f3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/IExtendedCompletionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.java
index fa85125..7ad0644 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISearchRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.java
index b86fbe5..46bbb44 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ISelectionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.java
index a640f79..90a392a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.java
index 6a6a7e6..247eddd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalCompletionProposal.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.java
index 6722917..7c251b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/InternalExtendedCompletionContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.java
index fb20396..6804363 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/MissingTypesGuesser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/RelevanceConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/RelevanceConstants.java
index 3d30cf6..cce2568 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/RelevanceConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/RelevanceConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.java
index 23d01b3..bbdcf4e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/SelectionEngine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -54,6 +57,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Argument;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ConstructorDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.FieldDeclaration;
@@ -1474,6 +1478,13 @@
 				return true;
 			}
 			@Override
+			public boolean visit(
+		    		Argument argument, BlockScope scope) {
+				if (argument.type instanceof SingleTypeReference && ((SingleTypeReference)argument.type).token == assistIdentifier)
+					throw new SelectionNodeFound(argument.binding.type);
+				return true; // do nothing by default, keep traversing
+			}
+			@Override
 			public boolean visit(TypeDeclaration typeDeclaration, CompilationUnitScope scope) {
 				if (typeDeclaration.name == assistIdentifier) {
 					throw new SelectionNodeFound(typeDeclaration.binding);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.java
index 1c24342..91443e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/ThrownExceptionFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.java
index bdaddcb..c39005f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/UnresolvedReferenceNameFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.java
index 8b42b2f..bc2586f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/AssistNodeParentAnnotationArrayInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.java
index 0579afa..6356ae5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadoc.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.java
index 6cb3f37..fa298f9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionJavadocParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -292,6 +295,8 @@
 	 */
 	private void initLevelTags() {
 		int level = ((int)(this.complianceLevel >>> 16)) - ClassFileConstants.MAJOR_VERSION_1_1 + 1;
+		if ( level >= BLOCK_TAGS_LENGTH)
+			return; // To support future JDKs
 		// Init block tags
 		this.levelTags[BLOCK_IDX] = new char[BLOCK_ALL_TAGS_LENGTH][];
 		this.levelTagsLength[BLOCK_IDX] = 0;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.java
index 2fd615c..965df6b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeDetector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.java
index b969f41..52760d4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionNodeFound.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.java
index 6f92510..bc287e6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationMemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.java
index 4f6283e..274753b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnAnnotationOfType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.java
index 19a6865..f147d83 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnArgumentName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.java
index 9567042..d6ff0bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnBranchStatementLabel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.java
index 5206a3a..4852a1d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnClassLiteralAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.java
index 1a2e4db..5457ca7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExplicitConstructorCall.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.java
index ecca31b..3eb8e04 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnExportReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.java
index a661033..0516d16 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.java
index 87c5e03..241c8dc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnFieldType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.java
index 1adffb7..f43eb4c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnImportReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.java
index 7575f42..84f994b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadoc.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.java
index 78f1c69..376b5fc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.java
index 50c023f..0f16794 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocFieldReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.java
index f4f08ef..33a12b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocMessageSend.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.java
index 2cb3654..1afeb7c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocParamNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.java
index 0fee707..bb6e5ed 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.java
index 791cf6b..ee4873f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.java
index 1ec4669..f698ddc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTag.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.java
index 5c62555..cd65788 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnJavadocTypeParamReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.java
index 1a75e28..10498d4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.java
index f7d105e..c143428 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword1.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.java
index 81193ee..0707b1a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword2.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.java
index c2d339f..591c421 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeyword3.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.java
index 95641fd..0c91ccf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModule2.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.java
index 6c02854..6da7f4b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.java
index 5d02da5..013eb6a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnKeywordModuleInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.java
index 997cc51..b0b1910 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnLocalName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.java
index b0b0507..e60b702 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMarkerAnnotationName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.java
index 3a74c85..bfecac7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberAccess.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.java
index 3347395..d6e2a73 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMemberValueName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.java
index 2edf6b4..93ea314 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSend.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.java
index 783164e..03e3dc9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMessageSendName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.java
index 7ab2f51..539d6a3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.java
index 99fa1d5..39f6223 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodReturnType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.java
index 4db098f..a4cbaff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnMethodTypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.java
index f62d001..72d36eb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.java
index 310e8e8..cd8e033 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnModuleReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.java
index 4d12d9f..c08a829 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.java
index d2fe191..ce40f9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnPackageVisibilityReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.java
index cc8b087..5815aa7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnParameterizedQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.java
index 79c1baf..a73eed7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.java
index 4e70f84..14b3b07 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesImplementationsSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.java
index 1fcfce8..6b6073e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.java
index fb48c6a..3c3d871 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnProvidesInterfacesSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.java
index 25aab0a..874633a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.java
index 6d1eef0..c9be864 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.java
index 2cd978a..aab9ca1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.java
index 376e537..eb03aad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnReferenceExpressionName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.java
index 511f77d..476613c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.java
index 00d9767..4a38c49 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.java
index 690a8c8..30034d8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnStringLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.java
index fd1be47..cc2e63f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.java
index e4a5dbe..525bcaa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionOnUsesSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.java
index 4176623..8e38061 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *		IBM Corporation - initial API and implementation
@@ -181,7 +184,8 @@
 	private boolean inReferenceExpression;
 	private IProgressMonitor monitor;
 	private int resumeOnSyntaxError = 0;
-
+	private boolean consumedEnhancedFor;
+	
 public CompletionParser(ProblemReporter problemReporter, boolean storeExtraSourceEnds) {
 	super(problemReporter);
 	this.reportSyntaxErrorIsRequired = false;
@@ -626,7 +630,9 @@
 				|| (expression instanceof AllocationExpression
 					&& ((AllocationExpression)expression).type == this.assistNode)
 				|| (expression instanceof AND_AND_Expression
-						&& (this.elementPtr >= 0 && this.elementObjectInfoStack[this.elementPtr] instanceof InstanceOfExpression))){
+						&& (this.elementPtr >= 0 && this.elementObjectInfoStack[this.elementPtr] instanceof InstanceOfExpression))
+				|| (expression instanceof ConditionalExpression
+						  && ((ConditionalExpression) expression).valueIfFalse == this.assistNode)){
 				buildMoreCompletionContext(expression);
 				if (this.assistNodeParent == null
 					&& expression instanceof Assignment) {
@@ -2617,6 +2623,13 @@
 	}
 }
 @Override
+protected void consumeEnhancedForStatementHeader(){
+	this.consumedEnhancedFor = true;
+	super.consumeEnhancedForStatementHeader();
+
+}
+
+@Override
 protected void consumeEnhancedForStatementHeaderInit(boolean hasModifiers) {
 	super.consumeEnhancedForStatementHeaderInit(hasModifiers);
 	this.hasUnusedModifiers = false;
@@ -3791,6 +3804,8 @@
 	int previous = this.previousToken;
 	int prevIdentifierPtr = this.previousIdentifierPtr;
 
+	isInsideEnhancedForLoopWithoutBlock(token);
+	
 	if (isInsideMethod() || isInsideFieldInitialization() || isInsideAnnotation() || isInsideEnumConstantnitialization()) {
 		switch(token) {
 			case TokenNameLPAREN:
@@ -4343,6 +4358,13 @@
 		}
 	}
 }
+private void isInsideEnhancedForLoopWithoutBlock(int token) {
+	if( this.consumedEnhancedFor == true && token != TokenNameLBRACE) {
+		consumeOpenFakeBlock();
+	}
+	this.consumedEnhancedFor = false;
+	
+}
 @Override
 protected void consumeInvocationExpression() { // on error, a message send's error reductions will take the expression path rather than the statement path since that is a dead end.
 	super.consumeInvocationExpression();
@@ -4860,6 +4882,9 @@
 					keywords[count++]= Keywords.VAR;
 				}
 			} else if(kind != K_BETWEEN_CASE_AND_COLON && kind != K_BETWEEN_DEFAULT_AND_COLON) {
+				if (kind == K_LOCAL_INITIALIZER_DELIMITER && this.options.complianceLevel >= ClassFileConstants.JDK11) {
+					keywords[count++]= Keywords.VAR;
+				}
 				keywords[count++]= Keywords.TRUE;
 				keywords[count++]= Keywords.FALSE;
 				keywords[count++]= Keywords.NULL;
@@ -5720,6 +5745,23 @@
 	}
 	return false;
 }
+@Override
+protected int actFromTokenOrSynthetic(int previousAct) {
+	int newAct = tAction(previousAct, this.currentToken);
+	if (this.hasError && !this.diet && newAct == ERROR_ACTION && this.currentToken == TerminalTokens.TokenNameEOF) {
+		if (requireExtendedRecovery()) {
+			// during extended recovery, if EOF would be wrong, try a few things to reduce our stacks:
+			for (int tok : RECOVERY_TOKENS) {
+				newAct = tAction(previousAct, tok);
+				if (newAct != ERROR_ACTION) {
+					this.currentToken = tok; // this worked, pretend we really got this from the Scanner
+					return newAct;
+				}
+			}
+		}
+	}
+	return newAct;
+}
 
 protected boolean isInImportStatement() {
 	return foundToken(K_INSIDE_IMPORT_STATEMENT);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.java
index 95a9e6c..744cc00 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/CompletionScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *
  * Contributors:
@@ -863,12 +866,31 @@
 	/* might be completing at very end of file (e.g. behind a dot) */
 	if (this.completionIdentifier == null &&
 		this.startPosition == this.cursorLocation + 1){
+		this.endOfEmptyToken = this.currentPosition - 1;
 		this.currentPosition = this.startPosition; // for being detected as empty free identifier
 		return TokenNameIdentifier;
 	}
 	return TokenNameEOF;
 }
 @Override
+protected int getNextNotFakedToken() throws InvalidInputException {
+	int token;
+	boolean fromUnget = false;
+	if (this.nextToken != TokenNameNotAToken) {
+		token = this.nextToken;
+		this.nextToken = TokenNameNotAToken;
+		fromUnget = true;
+	} else {
+		token = getNextToken();
+	}
+	if (this.currentPosition == this.startPosition) {
+		if (!fromUnget)
+			this.currentPosition++; // on fake completion identifier
+		return -1;
+	}
+	return token;
+}
+@Override
 public final void getNextUnicodeChar() throws InvalidInputException {
 	int temp = this.currentPosition; // the \ is already read
 	super.getNextUnicodeChar();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.java
index fe9a916..03d8371 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/complete/InvalidCursorLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.java
index 539b560..7bb4b51 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.java
index 8fb055d..a252994 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.java
index 02ab4bf..0cfebf3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.java
index b73e30a..00379cc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistImportDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.java
index d02bcda..38aaecf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.java
index 831d0f8..5f3b751 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistOptions.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.java
index 7d547be..d61f8de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistPackageDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.java
index 6e42125..806ac27 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -116,7 +119,7 @@
 	protected boolean isFirst = false;
 
 	public AssistParser snapShot;
-	private static final int[] RECOVERY_TOKENS = new int [] { TokenNameSEMICOLON, TokenNameRPAREN,};
+	protected static final int[] RECOVERY_TOKENS = { TokenNameSEMICOLON, TokenNameRPAREN, TokenNameRBRACE, TokenNameRBRACKET};
 
 
 public AssistParser(ProblemReporter problemReporter) {
@@ -231,9 +234,6 @@
 	ASTNode node = null, lastNode = null;
 	for (int i = 0; i <= this.astPtr; i++, lastNode = node) {
 		node = this.astStack[i];
-		if(node instanceof ForeachStatement && ((ForeachStatement)node).action == null) {
-			node = ((ForeachStatement)node).elementVariable;
-		}
 		/* check for intermediate block creation, so recovery can properly close them afterwards */
 		int nodeStart = node.sourceStart;
 		for (int j = blockIndex; j <= this.realBlockPtr; j++){
@@ -334,6 +334,9 @@
 					element.add(stmt, 0);
 					this.lastCheckPoint = stmt.sourceEnd + 1;
 					this.isOrphanCompletionNode = false;
+				} else if ((stmt instanceof ForeachStatement) && ((ForeachStatement) stmt).action == null) {
+					element = element.add(stmt, 0);
+					this.lastCheckPoint = stmt.sourceEnd + 1;
 				}
 			}
 			continue;
@@ -2230,9 +2233,12 @@
 			
 	// If triggered fake EOF at completion site, see if the real next token would have passed muster.
 	if (this.currentToken == TokenNameEOF) {
-		if (this.scanner.eofPosition < this.scanner.source.length) {
+		int extendedEnd = this.scanner.source.length;
+		if (this.referenceContext instanceof AbstractMethodDeclaration)
+			extendedEnd = ((AbstractMethodDeclaration) this.referenceContext).bodyEnd; // no use parsing beyond the method's body end
+		if (this.scanner.eofPosition < extendedEnd) {
 			shouldStackAssistNode();
-			this.scanner.eofPosition = this.scanner.source.length;
+			this.scanner.eofPosition = extendedEnd;
 			nextToken = getNextToken();
 			if (automatonWillShift(nextToken, automatonState)) {
 				this.currentToken = nextToken;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.java
index beb43d4..24f2310 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.java
index 376a297..25e2a67 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.java
index 9ca2c28..3b9e6bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistSourceType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.java
index d93cfaa..98574e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/AssistTypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.java
index 495684f..4b689f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Engine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.java
index a09b766..dec89b2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/impl/Keywords.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.java
index 2ef67de..585dc17 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadoc.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.java
index 943924a..5160866 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionJavadocParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.java
index 9b2d4d0..981e189 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionNodeFound.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.java
index 7270a00..06e3ffd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnArgumentName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.java
index fd5ee0b..9d1daeb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnExplicitConstructorCall.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.java
index b4390e2..9b11e36 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.java
index 575ee3a..38dbe9c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnFieldType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.java
index d8cb2ef..75d45ff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnImportReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.java
index 78f1b28..f967a21 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLambdaExpression.java
@@ -1,10 +1,13 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2015 IBM Corporation and others.
  * 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.java
index ec40265..4a0f4b9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnLocalName.java
@@ -1,17 +1,23 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.codeassist.select;
 
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ForeachStatement;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.LocalDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BlockScope;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding;
 
 public class SelectionOnLocalName extends LocalDeclaration{
 
@@ -24,6 +30,23 @@
 	public void resolve(BlockScope scope) {
 
 		super.resolve(scope);
+		if (isTypeNameVar(scope)) {
+			if ((this.bits & ASTNode.IsForeachElementVariable) != 0 && scope.blockStatement instanceof ForeachStatement) {
+				// small version extracted from ForeachStatement.resolve():
+				
+				ForeachStatement stat = (ForeachStatement) scope.blockStatement;
+				TypeBinding collectionType = stat.collection == null ? null : stat.collection.resolveType((BlockScope) scope.parent);
+
+				// Patch the resolved type
+				if (!TypeBinding.equalsEquals(TypeBinding.NULL, collectionType)
+						&& !TypeBinding.equalsEquals(TypeBinding.VOID, collectionType)) {
+					TypeBinding elementType = ForeachStatement.getCollectionElementType(scope, collectionType);
+					if (elementType != null) {
+						this.patchType(elementType);
+					}
+				}
+			}
+		}
 		throw new SelectionNodeFound(this.binding);
 	}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.java
index 028c228..186b805 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnMessageSend.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.java
index 60d97f3..95be05a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.java
index 094b5a9..30ddda4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnModuleReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.java
index 70d0731..7ad9832 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnNameOfMemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.java
index ffcb7ee..524bae1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.java
index f9e8404..96d9419 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnPackageVisibilityReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.java
index 046a827..980c17d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.java
index 7fbf609..0923951 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnParameterizedSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.java
index f4bf973..c285e14 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.java
index 134cdbc..b20b5b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.java
index 49d1791..59a8396 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedSuperReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.java
index 35fdc01..93414b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.java
index c5a40f5..e5f86ce 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpression.java
@@ -1,10 +1,13 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2017 IBM Corporation and others.
  * 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.java
index 79960c0..b2cfc30 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnReferenceExpressionName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.java
index 00deb7a..b3aa8b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.java
index 4ea6330..689de12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.java
index 80eb70b..ae953cc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionOnSuperReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.java
index fa33344..529082e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -78,8 +81,15 @@
 	protected static final int K_INSIDE_RETURN_STATEMENT = SELECTION_PARSER + 2; // whether we are between the keyword 'return' and the end of a return statement
 	protected static final int K_CAST_STATEMENT = SELECTION_PARSER + 3; // whether we are between ')' and the end of a cast statement
 
-	// https://bugs.eclipse.org/bugs/show_bug.cgi?id=476693
-	private boolean selectionNodeFound;
+	/* https://bugs.eclipse.org/bugs/show_bug.cgi?id=476693
+	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=515758
+	 * Records whether and when we found an invocation being selected:
+	 * 0: not found
+	 * 1: found just now
+	 * 2...: inside block (lambda body) within the invocation found before
+	 * Rationale: we really need to complete parsing the invocation for resolving to succeed.
+	 */
+	private int selectionNodeFoundLevel = 0;
 	public ASTNode assistNodeParent; // the parent node of assist node
 
 	/* public fields */
@@ -839,24 +849,39 @@
 			this.lastIgnoredToken = -1;
 		}
 	}
-	if (this.selectionNodeFound) {
-		this.restartRecovery = true;
-	}
+	checkRestartRecovery();
 }
 @Override
 protected void consumeAssignment() {
 	super.consumeAssignment();
-	if (this.selectionNodeFound) {
-		this.restartRecovery = true;
-	}
+	checkRestartRecovery();
 }
 @Override
 protected void consumeBlockStatement() {
 	super.consumeBlockStatement();
-	if (this.selectionNodeFound) {
-		this.restartRecovery = true;
+	checkRestartRecovery();
+}
+protected void checkRestartRecovery() {
+	if (this.selectionNodeFoundLevel > 0) {
+		if (--this.selectionNodeFoundLevel == 0)
+			this.restartRecovery = true;
 	}
 }
+
+@Override
+protected void consumeOpenBlock() {
+	super.consumeOpenBlock();
+	if (this.selectionNodeFoundLevel > 0)
+		this.selectionNodeFoundLevel++;
+}
+
+@Override
+protected void consumeBlock() {
+	super.consumeBlock();
+	if (this.selectionNodeFoundLevel > 0)
+		this.selectionNodeFoundLevel--;
+}
+
 @Override
 protected void consumeMarkerAnnotation(boolean isTypeAnnotation) {
 	int index;
@@ -1516,7 +1541,7 @@
 	if (!this.diet){
 		// Don't restart recovery, not yet, until variable decl statement has been consumed.
 		// This is to ensure chained method invocations are taken into account for resolution.
-		this.selectionNodeFound = true;
+		this.selectionNodeFoundLevel = 1;
 		this.lastIgnoredToken = -1;
 	}
 
@@ -1544,7 +1569,7 @@
 	if (!this.diet){
 		// Don't restart recovery, not yet, until variable decl statement has been consumed.
 		// This is to ensure chained method invocations are taken into account for resolution.
-		this.selectionNodeFound = true;
+		this.selectionNodeFoundLevel = 1;
 		this.lastIgnoredToken = -1;
 	}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.java
index eb26a94..eed9423 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/codeassist/select/SelectionScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.java
index 61f5ac6..21ab0de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ASTVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.java
index bd35bc0..26fe134 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/AbstractAnnotationProcessorManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.java
index 0e432e8..bc6a1b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFile.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -172,6 +175,7 @@
 	public static final int INITIAL_CONTENTS_SIZE = 400;
 	public static final int INITIAL_HEADER_SIZE = 1500;
 	public static final int INNER_CLASSES_SIZE = 5;
+	public static final int NESTED_MEMBER_SIZE = 5;
 
 	/**
 	 * INTERNAL USE-ONLY
@@ -464,7 +468,10 @@
 	        }
 	    }
 	    //  End AspectJ Extension
-	    
+	    if (this.targetJDK >= ClassFileConstants.JDK11) {
+			// add nestMember and nestHost attributes
+			attributesNumber += generateNestAttributes();
+		}
 		// update the number of attributes
 		if (attributeOffset + 2 >= this.contents.length) {
 			resizeContents(2);
@@ -2680,6 +2687,69 @@
 		this.contentsOffset = localContentsOffset;
 		return 1;
 	}
+	private int generateNestHostAttribute() {
+		SourceTypeBinding nestHost = this.referenceBinding.getNestHost();
+		if (nestHost == null)
+			return 0;
+		int localContentsOffset = this.contentsOffset;
+		if (localContentsOffset + 10 >= this.contents.length) {
+			resizeContents(10);
+		}
+		int nestHostAttributeNameIndex =
+			this.constantPool.literalIndex(AttributeNamesConstants.NestHost);
+		this.contents[localContentsOffset++] = (byte) (nestHostAttributeNameIndex >> 8);
+		this.contents[localContentsOffset++] = (byte) nestHostAttributeNameIndex;
+
+		// The value of the attribute_length item must be two.
+		this.contents[localContentsOffset++] = 0;
+		this.contents[localContentsOffset++] = 0;
+		this.contents[localContentsOffset++] = 0;
+		this.contents[localContentsOffset++] = 2;
+
+		int nestHostIndex = this.constantPool.literalIndexForType(nestHost.constantPoolName());
+		this.contents[localContentsOffset++] = (byte) (nestHostIndex >> 8);
+		this.contents[localContentsOffset++] = (byte) nestHostIndex;
+		this.contentsOffset = localContentsOffset;
+		return 1;
+	}
+	private int generateNestMembersAttribute() {
+
+		int localContentsOffset = this.contentsOffset;
+		List<String> nestedMembers = this.referenceBinding.getNestMembers();
+		int numberOfNestedMembers = nestedMembers != null ? nestedMembers.size() : 0;
+		if (numberOfNestedMembers == 0) // JVMS 11 4.7.29 says "at most one" NestMembers attribute - return if none.
+			return 0;
+
+		int exSize = 8 + 2 * numberOfNestedMembers;
+		if (exSize + localContentsOffset >= this.contents.length) {
+			resizeContents(exSize);
+		}
+		int attributeNameIndex =
+			this.constantPool.literalIndex(AttributeNamesConstants.NestMembers);
+		this.contents[localContentsOffset++] = (byte) (attributeNameIndex >> 8);
+		this.contents[localContentsOffset++] = (byte) attributeNameIndex;
+		int value = (numberOfNestedMembers << 1) + 2;
+		this.contents[localContentsOffset++] = (byte) (value >> 24);
+		this.contents[localContentsOffset++] = (byte) (value >> 16);
+		this.contents[localContentsOffset++] = (byte) (value >> 8);
+		this.contents[localContentsOffset++] = (byte) value;
+		this.contents[localContentsOffset++] = (byte) (numberOfNestedMembers >> 8);
+		this.contents[localContentsOffset++] = (byte) numberOfNestedMembers;
+
+		for (int i = 0; i < numberOfNestedMembers; i++) {
+			char[] nestMemberName = nestedMembers.get(i).toCharArray();
+			int nestedMemberIndex = this.constantPool.literalIndexForType(nestMemberName);
+			this.contents[localContentsOffset++] = (byte) (nestedMemberIndex >> 8);
+			this.contents[localContentsOffset++] = (byte) nestedMemberIndex;
+		}
+		this.contentsOffset = localContentsOffset;
+		return 1;
+	}
+	private int generateNestAttributes() {
+		int nAttrs = generateNestMembersAttribute(); //either member or host will exist 4.7.29
+		nAttrs += generateNestHostAttribute();
+		return nAttrs;
+	}
 	private int generateModuleAttribute(ModuleDeclaration module) {
 		ModuleBinding binding = module.binding;
 		int localContentsOffset = this.contentsOffset;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.java
index 283bd3e..7ebdcaf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ClassFilePool.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.java
index 99d10f5..789652e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/CompilationResult.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.java
index cf91ad9..31531f6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/Compiler.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.java
index 56d6d35..1df2bb3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DefaultErrorHandlingPolicies.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.java
index 4021ffb..d296384 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/DocumentElementParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.java
index e58977c..a65689f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ExtraFlags.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.java
index fcae21a..933379c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ICompilerRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.java
index 95a1798..32e81cf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDebugRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.java
index 43c96d7..29d2b55 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IDocumentElementRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.java
index f993496..89a0f3f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IErrorHandlingPolicy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.java
index 0a0327b..0e5e993 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/IProblemFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.java
index 86fb48d..dc77563 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ISourceElementRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.java
index 9e04d11..f3affef 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ProcessTaskManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.java
index 7cf0fb5..9ccee80 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ReadManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java
index 5682642..6ff4643 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementNotifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.java
index 3dc1640..f28f138 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.java
index bcf6fdd..fe884cb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceElementRequestorAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.java
index 98d6e68..20e6a55 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/SourceJavadocParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.java
index 8d12687..914dcac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AnnotationDiscoveryVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.java
index ddada85..8836d66 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/AptProblem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.java
index 70dd7ec..4c7c083 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseAnnotationProcessorManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2018 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.java
index 0ef0655..8e2deae 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseMessagerImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 BEA Systems, Inc. and others 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - derived base class from BatchMessagerImpl
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.java
index 627e36c..3dfb87c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BaseProcessingEnvImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.java
index 8b12226..81b2829 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchAnnotationProcessorManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.java
index 9d1f2d2..6af83ca 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchFilerImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2015 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2006, 2018 BEA Systems, Inc. 
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
@@ -21,6 +24,7 @@
 import javax.annotation.processing.Filer;
 import javax.annotation.processing.FilerException;
 import javax.lang.model.element.Element;
+import javax.lang.model.element.TypeElement;
 import javax.tools.FileObject;
 import javax.tools.JavaFileManager;
 import javax.tools.JavaFileObject;
@@ -133,8 +137,19 @@
 	@Override
 	public JavaFileObject createSourceFile(CharSequence name,
 			Element... originatingElements) throws IOException {
-		JavaFileObject jfo = _fileManager.getJavaFileForOutput(
-				StandardLocation.SOURCE_OUTPUT, name.toString(), JavaFileObject.Kind.SOURCE, null);
+		String moduleAndPkgString = name.toString();
+		int slash = moduleAndPkgString.indexOf('/');
+		String mod = null;
+		if (slash != -1) {
+			name = moduleAndPkgString.substring(slash + 1, name.length());
+			mod = moduleAndPkgString.substring(0, slash);
+		}
+		TypeElement typeElement = _env._elementUtils.getTypeElement(name);
+		if (typeElement != null) {
+			throw new FilerException("Source file already exists : " + moduleAndPkgString); //$NON-NLS-1$
+		}
+		Location location = mod == null ? StandardLocation.SOURCE_OUTPUT : _fileManager.getLocationForModule(StandardLocation.SOURCE_OUTPUT, mod);
+		JavaFileObject jfo = _fileManager.getJavaFileForOutput(location, name.toString(), JavaFileObject.Kind.SOURCE, null);
 		URI uri = jfo.toUri();
 		if (_createdFiles.contains(uri)) {
 			throw new FilerException("Source file already created : " + name); //$NON-NLS-1$
@@ -161,8 +176,6 @@
 		if (_createdFiles.contains(uri)) {
 			throw new FilerException("Resource already created : " + location + '/' + pkg + '/' + relativeName); //$NON-NLS-1$
 		}
-
-		_createdFiles.add(uri);
 		return fo;
 	}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.java
index ef63367..87dd832 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchMessagerImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006-2009 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.java
index 84a87ee..600d01e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/BatchProcessingEnvImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2015 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.java
index 62fe809..c278e04 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/HookedJavaFileObject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2014 BEA Systems, Inc. and others 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.java
index d9713e5..90dc485 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/IProcessorProvider.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2007 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.java
index 2250549..49a1f3c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/ProcessorInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2011 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.java
index 7f2ea61..b6950e6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundDispatcher.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2015 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.java
index 79a4c7b..854428a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/dispatch/RoundEnvImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.java
index f28f543..cf4eee7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMemberValue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009, 2017 Vladimir Piskarev and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Vladimir Piskarev - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.java
index 33f18a9..d15d999 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationMirrorImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.java
index 13f4952..2997a91 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/AnnotationValueImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.java
index 3465dbb..98351e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ArrayTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2014 BEA Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
@@ -47,7 +50,7 @@
 	public <R, P> R accept(TypeVisitor<R, P> v, P p) {
 		return v.visitArray(this, p);
 	}
-	
+
 	@Override
 	protected AnnotationBinding[] getAnnotationBindings() {
 		AnnotationBinding[] oldies = ((ArrayBinding)_binding).getTypeAnnotations();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.java
index d0193dd..14ffaf4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/DeclaredTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2017 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2006, 2018 BEA Systems, Inc.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
@@ -55,6 +58,13 @@
 
 	@Override
 	public Element asElement() {
+		TypeBinding prototype = null;
+		if (_binding instanceof TypeBinding) {
+			prototype = ((TypeBinding) _binding).prototype();
+		}
+		if (prototype != null) {
+			return _env.getFactory().newElement(prototype, _elementKindHint);
+		}
 		// The JDT compiler does not distinguish between type elements and declared types
 		return _env.getFactory().newElement((ReferenceBinding)_binding, _elementKindHint);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.java
index 64c820c..787d278 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java
index 444f19d..4962c6b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.java
index 8cb7592..8b8eddb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ElementsImpl9.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *    Igor Fedorenko - extracted from ElementsImpl
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.java
index e2dfa21..cde3922 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -111,8 +114,8 @@
 		return Collections.emptyList();
 	}
 	
-	@Override
 	@SuppressWarnings("unchecked")
+	@Override
 	public <A extends Annotation> A[] getAnnotationsByType(Class<A> annotationType) {
 		return (A[]) Array.newInstance(annotationType, 0);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.java
index a39be78..2f8e52f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ErrorTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -92,6 +95,7 @@
 	public List<? extends AnnotationMirror> getAnnotationMirrors() {
 		return Factory.EMPTY_ANNOTATION_MIRRORS;
 	}
+
 	@Override
 	public <A extends Annotation> A getAnnotation(Class<A> annotationType) {
 		return null;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.java
index a19c78f..2d9eccf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.java
index ff88188..ef6a0d6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ExecutableTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -74,7 +77,7 @@
 	public TypeMirror getReturnType() {
 		return _env.getFactory().newTypeMirror(((MethodBinding) this._binding).returnType);
 	}
-	
+
 	@Override
 	protected AnnotationBinding[] getAnnotationBindings() {
 		return ((MethodBinding) this._binding).returnType.getTypeAnnotations();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.java
index 91825b2..fab659c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/Factory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2017 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.java
index 3b2b14e..031062e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/IElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2011 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.java
index 7af1876..475dc94 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/ModuleElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.java
index 2ce0313..bad7017 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NameImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2007 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.java
index 8fd71b5..45f04bc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/NoTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.java
index 5ef042d..f0c6c76 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PackageElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2017 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.java
index 55894eb..318dd7b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/PrimitiveTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2014 BEA Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java
index d94e05f..78c8e18 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.java
index 9a0b917..a5befcc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeMirrorImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2014 BEA Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
@@ -137,8 +140,8 @@
 		return _env == null ? null : _env.getFactory().getAnnotation(getPackedAnnotationBindings(), annotationType);
 	}
 
-	@Override
 	@SuppressWarnings("unchecked")
+	@Override
 	public <A extends Annotation> A[] getAnnotationsByType(Class<A> annotationType) {
 		if (_env == null)
 			return (A[]) Array.newInstance(annotationType, 0);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.java
index 30655a6..1b3d13a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeParameterElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.java
index 8b1716a..62c7ad7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypeVariableImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java
index de076bf..5817334 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/TypesImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007 - 2017 BEA Systems, Inc. and others
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    Walter Harley - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.java
index cadfb68..a0e8a34 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/VariableElementImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2015 BEA Systems, Inc. 
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.java
index 5847782..e8c9915 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/model/WildcardTypeImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.java
index f026ffc..26c3b26 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Archive.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.java
index 8fe42c7..c0b7ebd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ArchiveFileObject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.java
index b505470..689422e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2006, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -87,6 +90,7 @@
 	File jrtHome;
 	JrtFileSystem jrtSystem;
 	public ResourceBundle bundle;
+	String releaseVersion;
 	
 	public EclipseFileManager(Locale locale, Charset charset) {
 		this.locale = locale == null ? Locale.getDefault() : locale;
@@ -814,6 +818,13 @@
 					} else {
 						throw new IllegalArgumentException();
 					}
+				case "--release": //$NON-NLS-1$
+					if (remaining.hasNext()) {
+						this.releaseVersion = remaining.next();
+						return true;
+					} else {
+						throw new IllegalArgumentException();
+					}
 			}
 		} catch (IOException e) {
 			// ignore
@@ -1206,7 +1217,9 @@
 				customEncoding,
 				isSourceOnly,
 				accessRuleSet,
-				destPath, null);
+				destPath, 
+				null,
+				this.releaseVersion);
 		if (currentClasspath != null) {
 			paths.add(currentClasspath);
 		}
@@ -1336,7 +1349,7 @@
 						new DefaultProblemFactory());
 			for (Path path : paths) {
 				List<Classpath> mp = ModuleFinder.findModules(path.toFile(), null, 
-						new Parser(problemReporter, true), null, true);
+						new Parser(problemReporter, true), null, true, this.releaseVersion);
 				for (Classpath cp : mp) {
 					Collection<String> moduleNames = cp.getModuleNames(null);
 					for (String string : moduleNames) {
@@ -1380,7 +1393,17 @@
 	@Override
 	public Location getLocationForModule(Location location, String moduleName) throws IOException {
 		validateModuleLocation(location, moduleName);
-		return this.locationHandler.getLocation(location, moduleName);
+		Location result = this.locationHandler.getLocation(location, moduleName);
+		if (result == null && location == StandardLocation.CLASS_OUTPUT) {
+			LocationWrapper wrapper = this.locationHandler.getLocation(StandardLocation.MODULE_SOURCE_PATH, moduleName);
+			deriveOutputLocationForModules(moduleName, wrapper.paths);
+			result = getLocationForModule(location, moduleName);
+		} else if (result == null && location == StandardLocation.SOURCE_OUTPUT) {
+			LocationWrapper wrapper = this.locationHandler.getLocation(StandardLocation.MODULE_SOURCE_PATH, moduleName);
+			deriveSourceOutputLocationForModules(moduleName, wrapper.paths);
+			result = getLocationForModule(location, moduleName);
+		}
+		return result;
 	}
 
 	@Override
@@ -1438,7 +1461,50 @@
 		}
 		return null;
 	}
-
+	private void deriveOutputLocationForModules(String moduleName, Collection<? extends Path> paths) {
+		LocationWrapper wrapper = this.locationHandler.getLocation(StandardLocation.CLASS_OUTPUT, moduleName);
+		if (wrapper == null) {
+			// First get from our internally known location for legacy/unnamed location
+			wrapper = this.locationHandler.getLocation(StandardLocation.CLASS_OUTPUT, ""); //$NON-NLS-1$
+			if (wrapper == null) {
+				wrapper = this.locationHandler.getLocation(StandardLocation.CLASS_OUTPUT);
+			}
+			if (wrapper != null) {
+				Iterator<? extends Path> iterator = wrapper.paths.iterator();
+				if (iterator.hasNext()) {
+					try {
+					// Per module output location is always a singleton list
+					Path path = iterator.next().resolve(moduleName);
+					this.locationHandler.setLocation(StandardLocation.CLASS_OUTPUT, moduleName, Collections.singletonList(path));
+					} catch(Exception e) {
+						e.printStackTrace();
+					}
+				}
+			}
+		}
+	}
+	private void deriveSourceOutputLocationForModules(String moduleName, Collection<? extends Path> paths) {
+		LocationWrapper wrapper = this.locationHandler.getLocation(StandardLocation.SOURCE_OUTPUT, moduleName);
+		if (wrapper == null) {
+			// First get from our internally known location for legacy/unnamed location
+			wrapper = this.locationHandler.getLocation(StandardLocation.SOURCE_OUTPUT, ""); //$NON-NLS-1$
+			if (wrapper == null) {
+				wrapper = this.locationHandler.getLocation(StandardLocation.SOURCE_OUTPUT);
+			}
+			if (wrapper != null) {
+				Iterator<? extends Path> iterator = wrapper.paths.iterator();
+				if (iterator.hasNext()) {
+					try {
+					// Per module output location is always a singleton list
+					Path path = iterator.next().resolve(moduleName);
+					this.locationHandler.setLocation(StandardLocation.SOURCE_OUTPUT, moduleName, Collections.singletonList(path));
+					} catch(Exception e) {
+						e.printStackTrace();
+					}
+				}
+			}
+		}
+	}
 	@Override
 	public void setLocationForModule(Location location, String moduleName, Collection<? extends Path> paths) throws IOException {
 		validateModuleLocation(location, moduleName);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.java
index c6e1da2..d6f4ccb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/EclipseFileObject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.java
index f0fb9a9..f17b436 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/JrtFileSystem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2017 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.java
index e1a55ec..3527abe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/ManyToMany.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.java
index 337e8e0..87d1dc2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Options.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.java
index efc9354..0649a0a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/apt/util/Util.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.java
index 532ab5b..0186f27 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AND_AND_Expression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.java
index 0d8e244..7360efa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ASTNode.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.java
index 5a314da..20c9947 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractMethodDeclaration.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -544,7 +547,6 @@
 			bindArguments();
 			resolveReceiver();
 			bindThrownExceptions();
-			resolveJavadoc();
 			resolveAnnotations(this.scope, this.annotations, this.binding, this.isConstructor());
 			
 			long sourceLevel = this.scope.compilerOptions().sourceLevel;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.java
index 585ac73..22d588d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AbstractVariableDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.java
index 998a9b4..0b6e8c5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AllocationExpression.java
@@ -1,11 +1,14 @@
 //AspectJ
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *     Stephan Herrmann - Contributions for
@@ -164,7 +167,7 @@
 				LocalVariableBinding targetLocal;
 				if ((targetLocal = syntheticArgument.actualOuterLocalVariable) == null) continue;
 				if (targetLocal.declaration != null && !flowInfo.isDefinitelyAssigned(targetLocal)){
-					currentScope.problemReporter().uninitializedLocalVariable(targetLocal, this);
+					currentScope.problemReporter().uninitializedLocalVariable(targetLocal, this, currentScope);
 				}
 			}
 	}
@@ -313,7 +316,9 @@
 	MethodBinding codegenBinding = this.binding.original();
 
 	ReferenceBinding declaringClass;
-	if (codegenBinding.isPrivate() && TypeBinding.notEquals(currentScope.enclosingSourceType(), (declaringClass = codegenBinding.declaringClass))) {
+	if (codegenBinding.isPrivate() && 
+			!currentScope.enclosingSourceType().isNestmateOf(this.binding.declaringClass) &&
+			TypeBinding.notEquals(currentScope.enclosingSourceType(), (declaringClass = codegenBinding.declaringClass))) {
 
 		// from 1.4 on, local type constructor can lose their private flag to ease emulation
 		if ((declaringClass.tagBits & TagBits.IsLocalType) != 0 && currentScope.compilerOptions().complianceLevel >= ClassFileConstants.JDK1_4) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.java
index 095210f..8b1d35f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Annotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.java
index bc85783..314c839 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AnnotationMethodDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.java
index c53e95d..ea1b7c0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Argument.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.java
index 8a6f338..91e99c1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.java
index 47efb33..5364588 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.java
index 8370b6d..78cbed0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.java
index 38a5026..8fedb68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.java
index 373a5bd..538d010 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ArrayTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.java
index 2b9252c..e115348 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/AssertStatement.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.java
index 6a28104..7fc1bf6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Assignment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.java
index 806a68e..42adfd4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BinaryExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.java
index 3ef1d67..adfd95e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Block.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.java
index d829e2d..8c7248a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BranchStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.java
index 5d4f9f8..ec7d84a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/BreakStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.java
index 9c09930..be785b1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CaseStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.java
index e10ffa6..09a7e5b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CastExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.java
index 98fae88..a64a628 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CharLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.java
index 63add10..5ac9891 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ClassLiteralAccess.java
@@ -1,11 +1,14 @@
 //AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
  *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.java
index 26c7b5c..56f57d4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Clinit.java
@@ -1,10 +1,13 @@
 //AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.java
index ad6c05f..9534f68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CombinedBinaryExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.java
index 40d05a6..64f8f0a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -33,6 +36,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodScope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ModuleBinding;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds;
 import org.aspectj.org.eclipse.jdt.internal.compiler.parser.NLSTag;
@@ -553,8 +557,17 @@
 	this.stringLiterals[this.stringLiteralsPtr++] = literal;
 }
 
-public void recordSuppressWarnings(IrritantSet irritants, Annotation annotation, int scopeStart, int scopeEnd, ReferenceContext context) {
+private boolean isLambdaExpressionCopyContext(ReferenceContext context) {
 	if (context instanceof LambdaExpression && context != ((LambdaExpression) context).original())
+		return true; // Do not record from copies. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=441929
+	Scope cScope = context instanceof AbstractMethodDeclaration ? ((AbstractMethodDeclaration) context).scope :
+		context instanceof TypeDeclaration ? ((TypeDeclaration) context).scope : 
+		context instanceof LambdaExpression ? ((LambdaExpression) context).scope :
+			null;
+	return cScope != null ? isLambdaExpressionCopyContext(cScope.parent.referenceContext()) : false;
+}
+public void recordSuppressWarnings(IrritantSet irritants, Annotation annotation, int scopeStart, int scopeEnd, ReferenceContext context) {
+	if (isLambdaExpressionCopyContext(context))
 		return; // Do not record from copies. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=441929
 		
 	if (this.suppressWarningIrritants == null) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.java
index cb77101..04e5387 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/CompoundAssignment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -51,6 +54,7 @@
 		// account for exceptions thrown by any arithmetics:
 		flowContext.recordAbruptExit();
 	}
+	this.expression.checkNPEbyUnboxing(currentScope, flowContext, flowInfo);
 	flowInfo = ((Reference) this.lhs).analyseAssignment(currentScope, flowContext, flowInfo, this, true).unconditionalInits();
 	if (this.resolvedType.id == T_JavaLangString) {
 		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=339250
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.java
index a3e30b7..57fcce2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConditionalExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.java
index 119b476..7c408fc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ConstructorDeclaration.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.java
index 3c61e37..8787e38 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContainerAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 Jesper S Moller and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Jesper S Moller <jesper@selskabet.org> - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.java
index 00afe9d..3f0f8eb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ContinueStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.java
index f24a052..56ff586 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.java
index 316a330..1c19c0f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/DoubleLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.java
index 023dbbe..bd439a2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EmptyStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.java
index 4d6ed46..840846f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/EqualExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -126,7 +129,16 @@
 		// we do not impact enclosing try context because this kind of protection
 		// does not preclude the variable from being null in an enclosing scope
 	}
-
+	private void analyzeLocalVariable(Expression exp, FlowInfo flowInfo) {
+		if (exp instanceof SingleNameReference && (exp.bits & Binding.LOCAL) != 0 ) {
+			LocalVariableBinding localBinding = (LocalVariableBinding) ((SingleNameReference ) exp).binding;
+			if ((flowInfo.tagBits & FlowInfo.UNREACHABLE) == 0) {
+				localBinding.useFlag = LocalVariableBinding.USED;
+			} else if (localBinding.useFlag == LocalVariableBinding.UNUSED ) {
+				localBinding.useFlag = LocalVariableBinding.FAKE_USED;
+			}
+	}
+	}
 	@Override
 	public FlowInfo analyseCode(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo) {
 		FlowInfo result;
@@ -138,6 +150,7 @@
 				} else { // false == anything
 					//  this is equivalent to the right argument inits negated
 					result = this.right.analyseCode(currentScope, flowContext, flowInfo).asNegatedCondition();
+					analyzeLocalVariable(this.left, flowInfo);
 				}
 			}
 			else if ((this.right.constant != Constant.NotAConstant) && (this.right.constant.typeID() == T_boolean)) {
@@ -147,6 +160,7 @@
 				} else { // anything == false
 					//  this is equivalent to the right argument inits negated
 					result = this.left.analyseCode(currentScope, flowContext, flowInfo).asNegatedCondition();
+					analyzeLocalVariable(this.right, flowInfo);
 				}
 			}
 			else {
@@ -159,6 +173,7 @@
 				if (!this.left.constant.booleanValue()) { //  false != anything
 					//  this is equivalent to the right argument inits
 					result = this.right.analyseCode(currentScope, flowContext, flowInfo);
+					analyzeLocalVariable(this.left, flowInfo);
 				} else { // true != anything
 					//  this is equivalent to the right argument inits negated
 					result = this.right.analyseCode(currentScope, flowContext, flowInfo).asNegatedCondition();
@@ -168,6 +183,7 @@
 				if (!this.right.constant.booleanValue()) { //  anything != false
 					//  this is equivalent to the right argument inits
 					result = this.left.analyseCode(currentScope, flowContext, flowInfo);
+					analyzeLocalVariable(this.right, flowInfo);
 				} else { // anything != true
 					//  this is equivalent to the right argument inits negated
 					result = this.left.analyseCode(currentScope, flowContext, flowInfo).asNegatedCondition();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.java
index 28696a9..b6c8abf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExplicitConstructorCall.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -263,7 +266,9 @@
 			MethodBinding codegenBinding = this.binding.original();
 
 			// perform some emulation work in case there is some and we are inside a local type only
-			if (this.binding.isPrivate() && this.accessMode != ExplicitConstructorCall.This) {
+			if (this.binding.isPrivate() &&
+					!currentScope.enclosingSourceType().isNestmateOf(this.binding.declaringClass) &&
+					this.accessMode != ExplicitConstructorCall.This) {
 				ReferenceBinding declaringClass = codegenBinding.declaringClass;
 				// from 1.4 on, local type constructor can lose their private flag to ease emulation
 				if ((declaringClass.tagBits & TagBits.IsLocalType) != 0 && currentScope.compilerOptions().complianceLevel >= ClassFileConstants.JDK1_4) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.java
index 51094e3..06b426f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExportsStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.java
index caa9a87..8bfc355 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Expression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.java
index 1f80c9f..c1c332a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExpressionContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.java
index 711b8fb..37711bd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ExtendedStringLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.java
index 5551b38..f8b6f06 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2016 GK Software AG and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.java
index 04f1ae0..d532924 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FalseLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.java
index 1a4808e..27a0f31 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -303,22 +306,6 @@
 				initializationScope.problemReporter().assignmentHasNoEffect(this, this.name);
 			}
 		}
-		// Resolve Javadoc comment if one is present
-		if (this.javadoc != null) {
-			this.javadoc.resolve(initializationScope);
-		} else if (this.binding != null && this.binding.declaringClass != null && !this.binding.declaringClass.isLocalType()) {
-			// Set javadoc visibility
-			int javadocVisibility = this.binding.modifiers & ExtraCompilerModifiers.AccVisibilityMASK;
-			ProblemReporter reporter = initializationScope.problemReporter();
-			int severity = reporter.computeSeverity(IProblem.JavadocMissing);
-			if (severity != ProblemSeverities.Ignore) {
-				if (classScope != null) {
-					javadocVisibility = Util.computeOuterMostVisibility(classScope.referenceType(), javadocVisibility);
-				}
-				int javadocModifiers = (this.binding.modifiers & ~ExtraCompilerModifiers.AccVisibilityMASK) | javadocVisibility;
-				reporter.javadocMissing(this.sourceStart, this.sourceEnd, severity, javadocModifiers);
-			}
-		}
 	} finally {
 		initializationScope.initializedField = previousField;
 		initializationScope.lastVisibleFieldID = previousFieldID;
@@ -326,6 +313,34 @@
 			this.binding.setConstant(Constant.NotAConstant);
 	}
 }
+public void resolveJavadoc(MethodScope initializationScope) {
+	if (this.javadoc != null) {
+		FieldBinding previousField = initializationScope.initializedField;
+		int previousFieldID = initializationScope.lastVisibleFieldID;
+		try {
+			initializationScope.initializedField = this.binding;
+			if (this.binding != null)
+				initializationScope.lastVisibleFieldID = this.binding.id;
+			this.javadoc.resolve(initializationScope);
+		} finally {
+			initializationScope.initializedField = previousField;
+			initializationScope.lastVisibleFieldID = previousFieldID;
+		}
+	} else if (this.binding != null && this.binding.declaringClass != null && !this.binding.declaringClass.isLocalType()) {
+		// Set javadoc visibility
+		int javadocVisibility = this.binding.modifiers & ExtraCompilerModifiers.AccVisibilityMASK;
+		ProblemReporter reporter = initializationScope.problemReporter();
+		int severity = reporter.computeSeverity(IProblem.JavadocMissing);
+		if (severity != ProblemSeverities.Ignore) {
+			ClassScope classScope = initializationScope.enclosingClassScope();
+			if (classScope != null) {
+				javadocVisibility = Util.computeOuterMostVisibility(classScope.referenceType(), javadocVisibility);
+			}
+			int javadocModifiers = (this.binding.modifiers & ~ExtraCompilerModifiers.AccVisibilityMASK) | javadocVisibility;
+			reporter.javadocMissing(this.sourceStart, this.sourceEnd, severity, javadocModifiers);
+		}
+	}
+}
 
 public void traverse(ASTVisitor visitor, MethodScope scope) {
 	if (visitor.visit(this, scope)) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.java
index d2a462a..7e32563 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FieldReference.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -561,7 +564,8 @@
 	// if field from parameterized type got found, use the original field at codegen time
 	FieldBinding codegenBinding = this.binding.original();
 	if (this.binding.isPrivate()) {
-		if ((TypeBinding.notEquals(currentScope.enclosingSourceType(), codegenBinding.declaringClass))
+		if (!currentScope.enclosingSourceType().isNestmateOf(codegenBinding.declaringClass) &&
+			(TypeBinding.notEquals(currentScope.enclosingSourceType(), codegenBinding.declaringClass))
 				&& this.binding.constant(currentScope) == Constant.NotAConstant) {
 			if (this.syntheticAccessors == null)
 				this.syntheticAccessors = new MethodBinding[2];
@@ -741,7 +745,7 @@
 			scope.problemReporter().indirectAccessToStaticField(this, fieldBinding);
 		}
 		// check if accessing enum static field in initializer
-		if (declaringClass.isEnum()) {
+		if (declaringClass.isEnum() && !scope.isModuleScope()) {
 			MethodScope methodScope = scope.methodScope();
 			SourceTypeBinding sourceType = scope.enclosingSourceType();
 			if (this.constant == Constant.NotAConstant
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.java
index 533135d..86d895b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FloatLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.java
index 5e5c6c1..db7a531 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java
index 30987b4..d86b485 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -420,10 +423,10 @@
 		return output;
 	}
 
-	private TypeBinding getCollectionElementType(TypeBinding collectionType) {
+	public static TypeBinding getCollectionElementType(BlockScope scope, TypeBinding collectionType) {
 		if (collectionType == null) return null;
 		
-		boolean isTargetJsr14 = this.scope.compilerOptions().targetJDK == ClassFileConstants.JDK1_4;
+		boolean isTargetJsr14 = scope.compilerOptions().targetJDK == ClassFileConstants.JDK1_4;
 		if (collectionType.isCapture()) {
 			TypeBinding upperBound = ((CaptureBinding)collectionType).firstBound;
 			if (upperBound != null && upperBound.isArrayType())
@@ -441,7 +444,7 @@
 			TypeBinding[] arguments = null;
 			switch (iterableType.kind()) {
 				case Binding.RAW_TYPE : // for(Object o : Iterable)
-					return this.scope.getJavaLangObject();
+					return scope.getJavaLangObject();
 
 				case Binding.GENERIC_TYPE : // for (T t : Iterable<T>) - in case used inside Iterable itself
 					arguments = iterableType.typeVariables();
@@ -464,6 +467,7 @@
 	public void resolve(BlockScope upperScope) {
 		// use the scope that will hold the init declarations
 		this.scope = new BlockScope(upperScope);
+		this.scope.blockStatement = this;
 		this.elementVariable.resolve(this.scope); // collection expression can see itemVariable
 		TypeBinding elementType = this.elementVariable.type.resolvedType;
 		TypeBinding collectionType = this.collection == null ? null : this.collection.resolveType(upperScope);
@@ -480,11 +484,15 @@
 				upperScope.problemReporter().varLocalInitializedToVoid(this.elementVariable);
 				elementType = collectionType;
 			}
-			if ((elementType = getCollectionElementType(collectionType)) == null) {
+			if ((elementType = getCollectionElementType(this.scope, collectionType)) == null) {
 				elementType = collectionType;
 			} else {
 				elementType = this.elementVariable.patchType(elementType);
 			}
+			// additional check deferred from LocalDeclaration.resolve():
+			if (this.elementVariable.binding != null && this.elementVariable.binding.isValidBinding()) {
+				this.elementVariable.validateNullAnnotations(this.scope);
+			}
 		}
 
 		TypeBinding expectedCollectionType = null;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.java
index 6f2dc91..6b868ce 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/FunctionalExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -192,7 +195,7 @@
 			blockScope.problemReporter().targetTypeIsNotAFunctionalInterface(this);
 			return null;
 		}
-		if (!sam.isValidBinding()) {
+		if (!sam.isValidBinding() && sam.problemId() != ProblemReasons.ContradictoryNullAnnotations) {
 			return reportSamProblem(blockScope, sam);
 		}
 		
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.java
index b26cf3f..f09ed0c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IPolyExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.java
index 3397a68..b079139 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IfStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.java
index e594520..9b38e25 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ImportReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.java
index 01074d6..5043c53 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Initializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *Contributors:
  *     IBM Corporation - initial API and implementation
  *     Stephan Herrmann - Contribution for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.java
index eaf7b18..b342d31 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/InstanceOfExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.java
index 9169852..bc475a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.java
index e92aa91..48fab5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntLiteralMinValue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.java
index 03a31ad..c61a34d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/IntersectionCastTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.java
index 7af2dc2..e5378e0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Invocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.java
index 8c2bfc2..ce3c5c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Javadoc.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -192,6 +195,9 @@
 		if ((this.bits & ASTNode.ResolveJavadoc) == 0) {
 			return;
 		}
+
+		this.bits &= ~ASTNode.ResolveJavadoc;// avoid double resolution
+
 		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=247037, @inheritDoc tag cannot
 		// be used in the documentation comment for a class or interface.
 		if (this.inheritedPositions != null) {
@@ -267,6 +273,9 @@
 		if ((this.bits & ASTNode.ResolveJavadoc) == 0) {
 			return;
 		}
+
+		this.bits &= ~ASTNode.ResolveJavadoc;// avoid double resolution
+
 		// get method declaration
 		AbstractMethodDeclaration methDecl = methScope.referenceMethod();
 		boolean overriding = methDecl == null /* field declaration */ || methDecl.binding == null /* compiler error */
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.java
index f791f36..01d9a22 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java
index dd1e043..89c89ac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.java
index 24f3de8..e306284 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArrayQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.java
index f753562..36d4539 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocArraySingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.java
index 2921ec3..8cb97c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocFieldReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.java
index 152acbd..b108fdb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocImplicitTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.java
index 35448e2..641dfce 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocMessageSend.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.java
index e37792b..b1e7979 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.java
index 1065bbd..e285bda 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocReturnStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.java
index a389c84..7393950 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.java
index 4aec1c4..66aa2a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/JavadocSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -17,8 +20,11 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BlockScope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.PackageBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ProblemReasons;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ProblemReferenceBinding;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding;
 
@@ -58,6 +64,14 @@
 			}
 		}
 		this.resolvedType = getTypeBinding(scope);
+		if (this.resolvedType instanceof LocalTypeBinding) {
+			// scope grants access to local types within this method, which, however, are illegal in javadoc
+			LocalTypeBinding localType = (LocalTypeBinding) this.resolvedType;
+			if (localType.scope != null && localType.scope.parent == scope) {
+				this.resolvedType = new ProblemReferenceBinding(new char[][] { localType.sourceName },
+						(ReferenceBinding) this.resolvedType, ProblemReasons.NotFound);
+			}
+		}
 		// End resolution when getTypeBinding(scope) returns null. This may happen in
 		// certain circumstances, typically when an illegal access is done on a type
 		// variable (see bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=204749)
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.java
index c2dc548..81c17ca 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LabeledStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -67,8 +70,8 @@
 			mergedInfo = statementInfo.mergedWith(labelContext.initsOnBreak);
 			if (reinjectNullInfo) {
 				// an embedded loop has had no chance to reinject forgotten null info
-				((UnconditionalFlowInfo)mergedInfo).addInitializationsFrom(flowInfo.unconditionalFieldLessCopy()).
-					addInitializationsFrom(labelContext.initsOnBreak.unconditionalFieldLessCopy());
+				((UnconditionalFlowInfo)mergedInfo).addNullInfoFrom(flowInfo.unconditionalFieldLessCopy()).
+					addNullInfoFrom(labelContext.initsOnBreak.unconditionalFieldLessCopy());
 			}
 			this.mergedInitStateIndex =
 				currentScope.methodScope().recordInitializationStates(mergedInfo);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.java
index 54ee11e..3e27335 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LambdaExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -48,6 +51,7 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedHashSet;
+import java.util.Map;
 import java.util.Set;
 
 import org.aspectj.org.eclipse.jdt.core.compiler.CategorizedProblem;
@@ -75,6 +79,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ExtraCompilerModifiers;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.InferenceContext18;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.IntersectionTypeBinding18;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding;
@@ -86,6 +91,8 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Substitution;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Substitution.NullSubstitution;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SyntheticArgumentBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SyntheticMethodBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TagBits;
@@ -94,6 +101,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.VariableBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.WildcardBinding;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope.Substitutor;
 import org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser;
 import org.aspectj.org.eclipse.jdt.internal.compiler.problem.AbortCompilation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.problem.AbortCompilationUnit;
@@ -127,6 +135,8 @@
 	private HashMap<TypeBinding, LambdaExpression> copiesPerTargetType;
 	protected Expression [] resultExpressions = NO_EXPRESSIONS;
 	public InferenceContext18 inferenceContext; // when performing tentative resolve keep a back reference to the driving context
+	private Map<Integer/*sourceStart*/, LocalTypeBinding> localTypes; // support look-up of a local type from this lambda copy
+
 	
 	public LambdaExpression(CompilationResult compilationResult, boolean assistNode, boolean requiresGenericSignature) {
 		super(compilationResult);
@@ -237,6 +247,7 @@
 	public TypeBinding resolveType(BlockScope blockScope, boolean skipKosherCheck) {
 		
 		boolean argumentsTypeElided = argumentsTypeElided();
+		boolean argumentsTypeVar = argumentsTypeVar(blockScope);
 		int argumentsLength = this.arguments == null ? 0 : this.arguments.length;
 		
 		if (this.constant != Constant.NotAConstant) {
@@ -245,7 +256,7 @@
 			if (this.original == this)
 				this.ordinal = recordFunctionalType(blockScope);
 			
-			if (!argumentsTypeElided) {
+			if (!argumentsTypeElided && !argumentsTypeVar) {
 				for (int i = 0; i < argumentsLength; i++)
 					this.argumentTypes[i] = this.arguments[i].type.resolveType(blockScope, true /* check bounds*/);
 			}
@@ -265,7 +276,18 @@
 		if (!skipKosherCheck && (!haveDescriptor || this.descriptor.typeVariables != Binding.NO_TYPE_VARIABLES)) // already complained in kosher*
 			return this.resolvedType = null;
 		
-		this.binding = new MethodBinding(ClassFileConstants.AccPrivate | ClassFileConstants.AccSynthetic | ExtraCompilerModifiers.AccUnresolved,
+		// AspectJ extension - start
+		int modifiers = 0;
+		if (methodScope.parent != null && methodScope.parent.isInterTypeScope()) {
+			modifiers = ClassFileConstants.AccPublic | ClassFileConstants.AccSynthetic | ExtraCompilerModifiers.AccUnresolved;
+		} else {
+			modifiers = ClassFileConstants.AccPrivate | ClassFileConstants.AccSynthetic | ExtraCompilerModifiers.AccUnresolved;
+		}
+		this.binding = new MethodBinding(modifiers,
+		// was
+		// this.binding = new MethodBinding(ClassFileConstants.AccPrivate | ClassFileConstants.AccSynthetic | ExtraCompilerModifiers.AccUnresolved,
+		// AspectJ extension - end
+		
 							CharOperation.concat(TypeConstants.ANONYMOUS_METHOD, Integer.toString(this.ordinal).toCharArray()), // will be fixed up later.
 							haveDescriptor ? this.descriptor.returnType : TypeBinding.VOID, 
 							Binding.NO_PARAMETERS, // for now. 
@@ -278,7 +300,7 @@
 			int parametersLength = this.descriptor.parameters.length;
 			if (parametersLength != argumentsLength) {
             	this.scope.problemReporter().lambdaSignatureMismatched(this);
-            	if (argumentsTypeElided || this.original != this) // no interest in continuing to error check copy.
+            	if (argumentsTypeElided || argumentsTypeVar || this.original != this) // no interest in continuing to error check copy.
             		return this.resolvedType = null; // FUBAR, bail out ...
             	else {
             		this.resolvedType = null; // continue to type check.
@@ -303,7 +325,7 @@
 			
 			TypeBinding argumentType;
 			final TypeBinding expectedParameterType = haveDescriptor && i < this.descriptor.parameters.length ? this.descriptor.parameters[i] : null;
-			argumentType = argumentsTypeElided ? expectedParameterType : this.argumentTypes[i];
+			argumentType = (argumentsTypeElided || argumentsTypeVar) ? expectedParameterType : this.argumentTypes[i];
 			if (argumentType == null) {
 				argumentsHaveErrors = true;
 			} else if (argumentType == TypeBinding.VOID) {
@@ -318,7 +340,7 @@
 				}
 			}
 		}
-		if (!argumentsTypeElided && !argumentsHaveErrors) {
+		if (!argumentsTypeElided && !argumentsTypeVar && !argumentsHaveErrors) {
 			ReferenceBinding groundType = null;
 			ReferenceBinding expectedSAMType = null;
 			if (this.expectedType instanceof IntersectionTypeBinding18)
@@ -349,11 +371,13 @@
 		}
 		boolean parametersHaveErrors = false;
 		boolean genericSignatureNeeded = this.requiresGenericSignature || blockScope.compilerOptions().generateGenericSignatureForLambdaExpressions;
+		TypeBinding[] expectedParameterTypes = new TypeBinding[argumentsLength];
 		for (int i = 0; i < argumentsLength; i++) {
 			Argument argument = this.arguments[i];
 			TypeBinding argumentType;
 			final TypeBinding expectedParameterType = haveDescriptor && i < this.descriptor.parameters.length ? this.descriptor.parameters[i] : null;
-			argumentType = argumentsTypeElided ? expectedParameterType : this.argumentTypes[i];
+			argumentType = (argumentsTypeElided || argumentsTypeVar) ? expectedParameterType : this.argumentTypes[i];
+			expectedParameterTypes[i] = expectedParameterType;
 			if (argumentType != null && argumentType != TypeBinding.VOID) {
 				if (haveDescriptor && expectedParameterType != null && argumentType.isValidBinding() && TypeBinding.notEquals(argumentType, expectedParameterType)) {
 					if (expectedParameterType.isProperType(true)) {
@@ -383,6 +407,11 @@
 				}
 			}
 		}
+		if (argumentsTypeVar) {
+			for (int i = 0; i < argumentsLength; ++i) {
+				this.arguments[i].type.resolvedType = expectedParameterTypes[i];
+			}
+		}
 		// only assign parameters if no problems are found
 		if (!argumentsHaveErrors) {
 			this.binding.parameters = newParameters;
@@ -390,7 +419,7 @@
 				this.binding.setParameterAnnotations(parameterAnnotations);
 		}
 	
-		if (!argumentsTypeElided && !argumentsHaveErrors && this.binding.isVarargs()) {
+		if (!argumentsTypeElided && !argumentsTypeVar && !argumentsHaveErrors && this.binding.isVarargs()) {
 			if (!this.binding.parameters[this.binding.parameters.length - 1].isReifiable()) {
 				this.scope.problemReporter().possibleHeapPollutionFromVararg(this.arguments[this.arguments.length - 1]);
 			}
@@ -420,7 +449,7 @@
 		} // TODO (stephan): else? (can that happen?)
 
 		if (haveDescriptor && !argumentsHaveErrors && blockScope.compilerOptions().isAnnotationBasedNullAnalysisEnabled) {
-			if (!argumentsTypeElided) {
+			if (!argumentsTypeElided && !argumentsTypeVar) {
 				AbstractMethodDeclaration.createArgumentBindings(this.arguments, this.binding, this.scope); // includes validation
 				// no application of null-ness default, hence also no warning regarding redundant null annotation
 				mergeParameterNullAnnotations(blockScope);
@@ -450,6 +479,8 @@
 		if (this.shouldCaptureInstance && this.scope.isConstructorCall) {
 			this.scope.problemReporter().fieldsOrThisBeforeConstructorInvocation(this);
 		}
+		// beyond this point ensure that all local type bindings are their final binding:
+		updateLocalTypes();
 		return (argumentsHaveErrors|parametersHaveErrors) ? null : this.resolvedType;
 	}
 
@@ -516,6 +547,27 @@
 		return this.arguments.length > 0 && this.arguments[0].hasElidedType();
 	}
 
+	private boolean argumentsTypeVar(BlockScope blockScope) {
+		if (blockScope.compilerOptions().complianceLevel < ClassFileConstants.getComplianceLevelForJavaVersion(ClassFileConstants.MAJOR_VERSION_11)) return false;
+		boolean retval = false, isVar = false, mixReported = false;
+		Argument[] args =  this.arguments;
+		for (int i = 0, l = args.length; i < l; ++i) {
+			Argument arg = args[i];
+			TypeReference type = arg.type;
+			if (type == null) continue;
+			boolean prev = isVar;
+			retval |= isVar = type.isTypeNameVar(blockScope);
+			if (i > 0 && prev != isVar && !mixReported) { // report only once per list
+				blockScope.problemReporter().varCannotBeMixedWithNonVarParams(isVar ? arg : args[i - 1]);
+				mixReported = true;
+			}
+			if (isVar && (type.dimensions() > 0 || type.extraDimensions() > 0)) {
+				blockScope.problemReporter().varLocalCannotBeArray(arg);
+			}
+		}
+		return retval;
+	}
+
 	private void analyzeExceptions() {
 		ExceptionHandlingFlowContext ehfc;
 		CompilerOptions compilerOptions = this.scope.compilerOptions();
@@ -1400,4 +1452,77 @@
 		}
 		return this.classType = new LambdaTypeBinding();
 	}
+
+	public void addLocalType(LocalTypeBinding localTypeBinding) {
+		if (this.localTypes == null)
+			this.localTypes = new HashMap<>();
+		this.localTypes.put(localTypeBinding.sourceStart, localTypeBinding);
+	}
+
+	/**
+	 * During inference, several copies of a lambda may be created.
+	 * If a lambda body contains a local type declaration, one binding may be created
+	 * within each of the lambda copies. Once inference finished, we need to map all
+	 * such local type bindings to the instance from the correct lambda copy.
+	 * <p>
+	 * When a local type binding occurs as a field of another type binding (e.g.,
+	 * type argument), the local type will be replaced in-place, assuming that the
+	 * previous binding should never escape the context of resolving this lambda.
+	 * </p>
+	 */
+	class LocalTypeSubstitutor extends Substitutor {
+		Map<Integer,LocalTypeBinding> localTypes2;
+		
+		public LocalTypeSubstitutor(Map<Integer, LocalTypeBinding> localTypes) {
+			this.localTypes2 = localTypes;
+		}
+
+		@Override
+		public TypeBinding substitute(Substitution substitution, TypeBinding originalType) {
+			if (originalType.isLocalType()) {
+				LocalTypeBinding orgLocal = (LocalTypeBinding) originalType;
+				MethodScope lambdaScope2 = orgLocal.scope.enclosingLambdaScope();
+				if (lambdaScope2 != null) {
+					if (((LambdaExpression) lambdaScope2.referenceContext).sourceStart == LambdaExpression.this.sourceStart) {
+						// local type within this lambda needs replacement: 
+						TypeBinding substType = this.localTypes2.get(orgLocal.sourceStart);
+						if (substType != null) {
+							orgLocal.transferConstantPoolNameTo(substType);
+							return substType;
+						}
+					}
+				}
+				return originalType;
+			}
+			return super.substitute(substitution, originalType);
+		}
+	}
+
+	private void updateLocalTypes() {
+		if (this.descriptor == null || this.localTypes == null)
+			return;
+		LocalTypeSubstitutor substor = new LocalTypeSubstitutor(this.localTypes);
+		NullSubstitution subst = new NullSubstitution(this.scope.environment());
+		updateLocalTypesInMethod(this.binding, substor, subst);
+		updateLocalTypesInMethod(this.descriptor, substor, subst);
+		this.resolvedType = substor.substitute(subst, this.resolvedType);
+		this.expectedType = substor.substitute(subst, this.expectedType);
+	}
+
+	/**
+	 * Perform substitution with a {@link LocalTypeSubstitutor} on all types mentioned in the given method binding.
+	 */
+	void updateLocalTypesInMethod(MethodBinding method) {
+		if (this.localTypes == null)
+			return;
+		updateLocalTypesInMethod(method, new LocalTypeSubstitutor(this.localTypes), new NullSubstitution(this.scope.environment()));
+	}
+
+	private void updateLocalTypesInMethod(MethodBinding method, Substitutor substor, Substitution subst) {
+		method.declaringClass = (ReferenceBinding) substor.substitute(subst, method.declaringClass);
+		method.returnType = substor.substitute(subst, method.returnType);
+		for (int i = 0; i < method.parameters.length; i++) {
+			method.parameters[i] = substor.substitute(subst, method.parameters[i]);
+		}
+	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.java
index f3806b4..edbb4bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Literal.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.java
index 9e04811..821e582 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LocalDeclaration.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -360,7 +363,20 @@
 			return;
 		}
 
-		// store the constant for final locals
+		boolean resolveAnnotationsEarly = false;
+		if (scope.environment().usesNullTypeAnnotations() 
+				&& !isTypeNameVar // 'var' does not provide a target type
+				&& variableType.isValidBinding()) { 
+			resolveAnnotationsEarly = this.initialization instanceof Invocation
+					|| this.initialization instanceof ConditionalExpression
+					|| this.initialization instanceof ArrayInitializer;
+		}
+		if (resolveAnnotationsEarly) {
+			// these are definitely no constants, so resolving annotations early should be safe
+			resolveAnnotations(scope, this.annotations, this.binding, true);
+			// for type inference having null annotations upfront gives better results
+			variableType = this.type.resolvedType;
+		}
 		if (this.initialization != null) {
 			if (this.initialization instanceof ArrayInitializer) {
 				TypeBinding initializationType = this.initialization.resolveTypeExpecting(scope, variableType);
@@ -411,9 +427,14 @@
 					? this.initialization.constant.castTo((variableType.id << 4) + this.initialization.constant.typeID())
 					: Constant.NotAConstant);
 		}
-		// only resolve annotation at the end, for constant to be positioned before (96991)
+		// if init could be a constant only resolve annotation at the end, for constant to be positioned before (96991)
+		if (!resolveAnnotationsEarly)
 		resolveAnnotations(scope, this.annotations, this.binding, true);
 		Annotation.isTypeUseCompatible(this.type, scope, this.annotations);
+		validateNullAnnotations(scope);
+	}
+
+	void validateNullAnnotations(BlockScope scope) {
 		if (!scope.validateNullAnnotation(this.binding.tagBits, this.type, this.annotations))
 			this.binding.tagBits &= ~TagBits.AnnotationNullMASK;
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.java
index 82592ce..98232bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.java
index 8eea07a..66d2ee0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/LongLiteralMinValue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.java
index d78ab3c..a305ce7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MagicLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.java
index 1ee634d..3f88d00 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MarkerAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.java
index 9dbbccc..b426990 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
index a685508..ce72eb9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MessageSend.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -496,7 +499,8 @@
 		TypeBinding constantPoolDeclaringClass = CodeStream.getConstantPoolDeclaringClass(currentScope, codegenBinding, this.actualReceiverType, this.receiver.isImplicitThis());
 		if (isStatic){
 			codeStream.invoke(Opcodes.OPC_invokestatic, codegenBinding, constantPoolDeclaringClass, this.typeArguments);
-		} else if((this.receiver.isSuper()) || codegenBinding.isPrivate()){
+		} else if((this.receiver.isSuper()) || 
+				(!currentScope.enclosingSourceType().isNestmateOf(this.binding.declaringClass) && codegenBinding.isPrivate())){
 			codeStream.invoke(Opcodes.OPC_invokespecial, codegenBinding, constantPoolDeclaringClass, this.typeArguments);
 		} else if (constantPoolDeclaringClass.isInterface()) { // interface or annotation type
 			codeStream.invoke(Opcodes.OPC_invokeinterface, codegenBinding, constantPoolDeclaringClass, this.typeArguments);
@@ -584,7 +588,8 @@
 		// End AspectJ extension
 		
 		// depth is set for both implicit and explicit access (see MethodBinding#canBeSeenBy)
-		if (TypeBinding.notEquals(currentScope.enclosingSourceType(), codegenBinding.declaringClass)){
+		if (!currentScope.enclosingSourceType().isNestmateOf(codegenBinding.declaringClass) &&
+				TypeBinding.notEquals(currentScope.enclosingSourceType(), codegenBinding.declaringClass)){
 			this.syntheticAccessor = ((SourceTypeBinding)codegenBinding.declaringClass).addSyntheticMethod(codegenBinding, false /* not super access there */);
 			currentScope.problemReporter().needToEmulateMethodAccess(codegenBinding, this);
 			return;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java
index 95a67c5..f5cc38f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.java
index e93375c..f10fdda 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -117,6 +120,10 @@
 			public ReferenceContext referenceContext() {
 				return ModuleDeclaration.this;
 			}
+			@Override
+			public boolean isModuleScope() {
+				return true;
+			}
 		};
 	}
 
@@ -276,29 +283,16 @@
 	private void analyseReferencedPackages(CompilationUnitScope skope) {
 		if (this.exports != null) {
 			for (ExportsStatement export : this.exports) {
-				PackageBinding pb = analysePackageStatement(skope, export);
-				if (pb != null && !pb.hasCompilationUnit(true))
-					skope.problemReporter().invalidPackageReference(IProblem.PackageDoesNotExistOrIsEmpty, export);					
+				PackageBinding pb = export.resolvedPackage;
+				if (pb == null)
+					continue;
+				if (pb instanceof SplitPackageBinding)
+					pb = ((SplitPackageBinding) pb).getIncarnation(this.binding);
+				if (pb.hasCompilationUnit(true))
+					continue;
+				skope.problemReporter().invalidPackageReference(IProblem.PackageDoesNotExistOrIsEmpty, export);
 			}
 		}
-		if (this.opens != null) {
-			for (OpensStatement opensStat : this.opens)
-				analysePackageStatement(skope, opensStat);
-			// it is legal for opens to refer to a "non-existing" or empty package
-		}
-	}
-
-	protected PackageBinding analysePackageStatement(CompilationUnitScope skope, PackageVisibilityStatement statement) {
-		PackageBinding pb = statement.resolvedPackage;
-		if (pb != null) {
-			if (pb instanceof SplitPackageBinding)
-				pb = ((SplitPackageBinding) pb).getIncarnation(this.binding);
-			if (pb.isViewedAsDeprecated()) {
-				TypeBinding packageInfo = pb.getType(PACKAGE_INFO_NAME, this.binding); // for annotations with details
-				skope.problemReporter().deprecatedPackage(statement.pkgRef, pb, packageInfo);
-			}
-		}
-		return pb;
 	}
 
 	public void analyseModuleGraph(CompilationUnitScope skope) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.java
index 194dac7..9483288 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.java
index f977147..ed16c4a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ModuleStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.java
index c1ae689..0692ab1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.java
index 55bf488..689ef83 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NormalAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.java
index 72ca2aa..4c9f68b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2016 GK Software AG and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.java
index 57247f9..d381bb9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NullLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.java
index 10083a6..e0138db 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/NumberLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.java
index 27b2a94..ce4c6c4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OR_OR_Expression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.java
index 42b6ca6..e388bac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OpensStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.java
index 7d7c949..8278fab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorIds.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorIds.java
index be9460a..c8674b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorIds.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/OperatorIds.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.java
index 2bd01b1..51ca2f5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PackageVisibilityStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.java
index 805ac3c..dc13a81 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedQualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -267,7 +270,7 @@
 			ReferenceBinding currentType = (ReferenceBinding) this.resolvedType;
 			if (qualifyingType == null) {
 				qualifyingType = currentType.enclosingType(); // if member type
-				if (qualifyingType != null && !currentType.isStatic()) {
+				if (qualifyingType != null && currentType.hasEnclosingInstanceContext()) {
 					qualifyingType = scope.environment().convertToParameterizedType(qualifyingType);
 				}
 			} else {
@@ -336,7 +339,7 @@
 				}
 				// check parameterizing (non-)static member type of raw type
 				if (typeIsConsistent) {
-					if (currentType.isStatic()) {
+					if (!currentType.hasEnclosingInstanceContext()) {
 						if (qualifyingType != null && qualifyingType.isRawType())
 							this.typesPerToken[i-1] = qualifyingType = qualifyingType.actualType(); // revert rawification of enclosing, since its generics are inaccessible
 					} else {
@@ -365,7 +368,7 @@
 					if (((ClassScope) scope).detectHierarchyCycle(currentOriginal, this))
 						return null;
 				if (currentOriginal.isGenericType()) {
-	   			    if (typeIsConsistent && qualifyingType != null && qualifyingType.isParameterizedType() && !currentOriginal.isStatic()) {
+	   			    if (typeIsConsistent && qualifyingType != null && qualifyingType.isParameterizedType() && currentOriginal.hasEnclosingInstanceContext()) {
 						scope.problemReporter().parameterizedMemberTypeMissingArguments(this, scope.environment().createParameterizedType(currentOriginal, null, qualifyingType), i);
 						typeIsConsistent = false;
 					}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.java
index 1b09e16..a3b9927 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ParameterizedSingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -225,7 +228,7 @@
 				// be resilient, still attempt resolving arguments
 			}
 			enclosingType = currentType.enclosingType(); // if member type
-			if (enclosingType != null && !currentType.isStatic()) {
+			if (enclosingType != null && currentType.hasEnclosingInstanceContext()) {
 				enclosingType = scope.environment().convertToParameterizedType(enclosingType);
 			}
 		} else { // resolving member type (relatively to enclosingType)
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.java
index bc19334..5f6b8bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PostfixExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.java
index 8b7cd68..25f1071 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/PrefixExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.java
index c9b8ff6..69aa48a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ProvidesStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.java
index 739ce19..35d63e6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.java
index 0cb696b..df99a7e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedNameReference.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -106,7 +109,7 @@
 			LocalVariableBinding localBinding;
 			if (!flowInfo
 				.isDefinitelyAssigned(localBinding = (LocalVariableBinding) this.binding)) {
-				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this);
+				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this, currentScope);
 			}
 			if ((flowInfo.tagBits & FlowInfo.UNREACHABLE) == 0)	{
 				localBinding.useFlag = LocalVariableBinding.USED;
@@ -213,7 +216,7 @@
 		case Binding.LOCAL : // reading a local variable
 			LocalVariableBinding localBinding;
 			if (!flowInfo.isDefinitelyAssigned(localBinding = (LocalVariableBinding) this.binding)) {
-				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this);
+				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this, currentScope);
 			}
 			if ((flowInfo.tagBits & FlowInfo.UNREACHABLE) == 0) {
 				localBinding.useFlag = LocalVariableBinding.USED;
@@ -786,7 +789,8 @@
 			}
 
 			if (field.isStatic()) {
-				if ((field.modifiers & ClassFileConstants.AccEnum) != 0) { // enum constants are checked even when qualified)
+				if ((field.modifiers & ClassFileConstants.AccEnum) != 0 && !scope.isModuleScope()) {
+					// enum constants are checked even when qualified -- modules don't contain field declarations
 					ReferenceBinding declaringClass = field.original().declaringClass;
 					MethodScope methodScope = scope.methodScope();
 					SourceTypeBinding sourceType = methodScope.enclosingSourceType();
@@ -877,7 +881,7 @@
 	if ((this.bits & ASTNode.RestrictiveFlagMASK) == Binding.LOCAL) {
 		LocalVariableBinding localVariableBinding = (LocalVariableBinding) this.binding;
 		if (localVariableBinding != null) {
-			if ((localVariableBinding.tagBits & TagBits.NotInitialized) != 0) {
+			if (localVariableBinding.isUninitializedIn(currentScope)) {
 				// local was tagged as uninitialized
 				return;
 			}
@@ -932,7 +936,8 @@
 	if (fieldBinding.isPrivate()) { // private access
 	    FieldBinding codegenField = getCodegenBinding(index < 0 ? (this.otherBindings == null ? 0 : this.otherBindings.length) : index);
 	    ReferenceBinding declaringClass = codegenField.declaringClass;
-		if (TypeBinding.notEquals(declaringClass, currentScope.enclosingSourceType())) {
+		if (!currentScope.enclosingSourceType().isNestmateOf(declaringClass) &&
+				TypeBinding.notEquals(declaringClass, currentScope.enclosingSourceType())) {
 		    setSyntheticAccessor(fieldBinding, index, ((SourceTypeBinding) declaringClass).addSyntheticMethod(codegenField, index >= 0 /*read-access?*/, false /*not super access*/));
 			currentScope.problemReporter().needToEmulateFieldAccess(codegenField, this, index >= 0 /*read-access?*/);
 			return;
@@ -1078,6 +1083,7 @@
 					ReferenceBinding declaringClass = fieldBinding.original().declaringClass;
 					SourceTypeBinding sourceType = methodScope.enclosingSourceType();
 					// check for forward references
+					if (!scope.isModuleScope()) {
 					if ((this.indexOfFirstFieldBinding == 1 || (fieldBinding.modifiers & ClassFileConstants.AccEnum) != 0 || (!fieldBinding.isFinal() && declaringClass.isEnum())) // enum constants are checked even when qualified
 							&& TypeBinding.equalsEquals(sourceType, declaringClass)
 							&& methodScope.lastVisibleFieldID >= 0
@@ -1089,13 +1095,14 @@
 							scope.problemReporter().forwardReference(this, this.indexOfFirstFieldBinding-1, fieldBinding);
 						}
 					}
+					}
 					if (isFieldUseDeprecated(fieldBinding, scope, this.indexOfFirstFieldBinding == this.tokens.length ? this.bits : 0)) {
 						scope.problemReporter().deprecatedField(fieldBinding, this);	
 					}
 					if (fieldBinding.isStatic()) {
 						// only last field is actually a write access if any
 						// check if accessing enum static field in initializer
-						if (declaringClass.isEnum()) {
+						if (declaringClass.isEnum() && !scope.isModuleScope()) {
 							if ((TypeBinding.equalsEquals(sourceType, declaringClass) || TypeBinding.equalsEquals(sourceType.superclass, declaringClass)) // enum constant body
 									&& fieldBinding.constant(scope) == Constant.NotAConstant
 									&& !methodScope.isStatic
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.java
index f353626..71fe795 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedSuperReference.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java
index eb508d5..0c6e1ed 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.java
index c109f13..79643ee 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/QualifiedTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -154,7 +157,7 @@
 				}
 				if (currentType.isGenericType()) {
 					qualifiedType = scope.environment().createRawType(currentType, qualifiedType);
-				} else if (currentType.isStatic()) {
+				} else if (!currentType.hasEnclosingInstanceContext()) {
 					qualifiedType = currentType; // parameterization of enclosing is irrelevant in this case
 				} else {
 					boolean rawQualified = qualifiedType.isRawType();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.java
index 5c75c7a..88c9ee3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Receiver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.java
index 0e16964..8d40f19 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Reference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.java
index 615ac9a..3daac6d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReferenceExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -437,10 +440,15 @@
 		
 		if (this.isConstructorReference()) {
 			ReferenceBinding allocatedType = codegenBinding.declaringClass;
-			if (codegenBinding.isPrivate() && TypeBinding.notEquals(enclosingSourceType, (allocatedType = codegenBinding.declaringClass))) {
+			if (codegenBinding.isPrivate() &&
+					TypeBinding.notEquals(enclosingSourceType, (allocatedType = codegenBinding.declaringClass))) {
 				if ((allocatedType.tagBits & TagBits.IsLocalType) != 0) {
 					codegenBinding.tagBits |= TagBits.ClearPrivateModifier;
 				} else {
+					if (currentScope.enclosingSourceType().isNestmateOf(this.binding.declaringClass)) {
+						this.syntheticAccessor = codegenBinding;
+						return;
+					}
 					this.syntheticAccessor = ((SourceTypeBinding) allocatedType).addSyntheticMethod(codegenBinding, false);
 					currentScope.problemReporter().needToEmulateMethodAccess(codegenBinding, this);
 				}
@@ -634,6 +642,9 @@
 			}
 
 	    	if (this.expectedType == null && this.expressionContext == INVOCATION_CONTEXT) {
+	    		if (compilerOptions.isAnnotationBasedNullAnalysisEnabled && this.binding != null) {
+	    			ImplicitNullAnnotationVerifier.ensureNullnessIsKnown(this.binding, scope);
+	    		}
 	    		return new PolyTypeBinding(this);
 			}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.java
index 1e8a719..ca82d68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/RequiresStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.java
index cc3f3e9..6c69318 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ReturnStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.java
index 60b031a..d3377d6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleMemberAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.java
index 7460705..8b7aafd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleNameReference.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -90,7 +93,7 @@
 				// check if assigning a final blank field
 				LocalVariableBinding localBinding;
 				if (!flowInfo.isDefinitelyAssigned(localBinding = (LocalVariableBinding) this.binding)) {
-					currentScope.problemReporter().uninitializedLocalVariable(localBinding, this);
+					currentScope.problemReporter().uninitializedLocalVariable(localBinding, this, currentScope);
 					// we could improve error msg here telling "cannot use compound assignment on final local variable"
 				}
 				if (localBinding.useFlag != LocalVariableBinding.USED) {
@@ -198,7 +201,7 @@
 		case Binding.LOCAL : // reading a local variable
 			LocalVariableBinding localBinding;
 			if (!flowInfo.isDefinitelyAssigned(localBinding = (LocalVariableBinding) this.binding)) {
-				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this);
+				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this, currentScope);
 			}
 			if ((flowInfo.tagBits & FlowInfo.UNREACHABLE) == 0) {
 				localBinding.useFlag = LocalVariableBinding.USED;
@@ -222,7 +225,7 @@
 	if (fieldBinding.isStatic()) {
 		// check if accessing enum static field in initializer
 		ReferenceBinding declaringClass = fieldBinding.declaringClass;
-		if (declaringClass.isEnum()) {
+		if (declaringClass.isEnum() && !scope.isModuleScope()) {
 			SourceTypeBinding sourceType = scope.enclosingSourceType();
 			if (this.constant == Constant.NotAConstant
 					&& !methodScope.isStatic
@@ -900,7 +903,7 @@
 	if ((this.bits & ASTNode.RestrictiveFlagMASK) == Binding.LOCAL) {
 		LocalVariableBinding localVariableBinding = (LocalVariableBinding) this.binding;
 		if (localVariableBinding != null) {
-			if ((localVariableBinding.tagBits & TagBits.NotInitialized) != 0) {
+			if (localVariableBinding.isUninitializedIn(currentScope)) {
 				// local was tagged as uninitialized
 				return;
 			}
@@ -949,7 +952,8 @@
 			
 		FieldBinding codegenField = fieldBinding.original();
 		if (((this.bits & ASTNode.DepthMASK) != 0)
-			&& (codegenField.isPrivate() // private access
+			&& ((codegenField.isPrivate() // private access
+					&& !currentScope.enclosingSourceType().isNestmateOf(codegenField.declaringClass) )
 				|| (codegenField.isProtected() // implicit protected access
 						&& codegenField.declaringClass.getPackage() != currentScope.invocationType().getPackage()))) { // AspectJ Extension
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.java
index 0a60da2..d5335a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SingleTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.java
index ef921f8..3c39d5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Statement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.java
index 6ea10c3..9dd9ef1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.java
index a496e45..f16f9a3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/StringLiteralConcatenation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.java
index 9b12fe0..5503600 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SubRoutineStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.java
index 3c77330..1d56e58 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SuperReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.java
index d08334f..f864a46 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.java
index 3dea58c..1578ab8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/SynchronizedStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.java
index eb0654a..a10c122 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThisReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.java
index 50ada10..54da2d4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/ThrowStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.java
index 183b0eb..e6a7aac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TrueLiteral.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.java
index 815e857..f9f0dfa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TryStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.java
index 72556f6..cb860b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeDeclaration.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -1275,6 +1278,17 @@
 				reporter.javadocMissing(this.sourceStart, this.sourceEnd, severity, javadocModifiers);
 			}
 		}
+		updateNestInfo();
+		FieldDeclaration[] fieldsDecls = this.fields;
+		if (fieldsDecls != null) {
+			for (FieldDeclaration fieldDeclaration : fieldsDecls)
+				fieldDeclaration.resolveJavadoc(this.initializerScope);
+		}
+		AbstractMethodDeclaration[] methodDecls = this.methods;
+		if (methodDecls != null) {
+			for (AbstractMethodDeclaration methodDeclaration : methodDecls)
+				methodDeclaration.resolveJavadoc();
+		}
 	} catch (AbortType e) {
 		this.ignoreFurtherInvestigation = true;
 		return;
@@ -1570,6 +1584,20 @@
 	}
 }
 
+private SourceTypeBinding findNestHost() {
+	ClassScope classScope = this.scope.enclosingTopMostClassScope();
+	return classScope != null ? classScope.referenceContext.binding : null;
+}
+
+void updateNestInfo() {
+	if (this.binding == null)
+		return;
+	SourceTypeBinding nestHost = findNestHost();
+	if (nestHost != null && !this.binding.equals(nestHost)) {// member
+		this.binding.setNestHost(nestHost);
+		nestHost.addNestMember(this.binding);
+	}
+}
 public boolean isPackageInfo() {
 	return CharOperation.equals(this.name,  TypeConstants.PACKAGE_INFO_NAME);
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.java
index d31d0c3..5bd2212 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.java
index 71d34a7..a0562fb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/TypeReference.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.java
index 20a5450..8f94735 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnaryExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.java
index 3d0e324..faab701 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnionTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.java
index 50a6f12..45c1a46 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UnlikelyArgumentCheck.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2017 GK Software AG and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.java
index 6e009f9..2ab3b61 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/UsesStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.java
index c567b7a..62d0c67 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/WhileStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.java
index 567f0b9..124aa82 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/ast/Wildcard.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.java
index 076d688..eb88725 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BasicModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.java
index 82694ba..ec97bc9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/BatchCompilerRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Gauthier JACQUES - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
index 0d448de..32c0cae 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.java
index 379a7b0..f660b58 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJar.java
@@ -1,10 +1,13 @@
 // AspectJ Extension
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.java
index 6edd12c..8487cb3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJep247.java
@@ -1,3 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v20.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.compiler.batch;
 
 import java.io.File;
@@ -15,32 +25,39 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.batch.FileSystem.Classpath;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
 import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader;
 import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRuleSet;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.IModule;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer;
+import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
 import org.aspectj.org.eclipse.jdt.internal.compiler.util.JRTUtil;
 import org.aspectj.org.eclipse.jdt.internal.compiler.util.Util;
 
-public class ClasspathJep247 extends ClasspathLocation {
+public class ClasspathJep247 extends ClasspathJrt {
 
 	private java.nio.file.FileSystem fs = null;
 	private String compliance = null;
+	private long jdklevel;
 	private String releaseInHex = null;
 	private String[] subReleases = null;
 	private Path releasePath = null;
-	private File file = null;
 	private Set<String> packageCache;
+	File jdkHome;
+	String modulePath = null;
 
 	public ClasspathJep247(File jdkHome, String release, AccessRuleSet accessRuleSet) {
-		super(accessRuleSet, null);
+		super(jdkHome, false, accessRuleSet, null);
 		this.compliance = release;
-		this.file = jdkHome;
+		this.jdklevel = CompilerOptions.releaseToJDKLevel(this.compliance);
+		this.jdkHome = jdkHome;
+		this.file = new File(new File(jdkHome, "lib"), "jrt-fs.jar"); //$NON-NLS-1$ //$NON-NLS-2$
 	}
 	@Override
 	public List<Classpath> fetchLinkedJars(FileSystem.ClasspathSectionProblemReporter problemReporter) {
@@ -83,23 +100,14 @@
 		}
 		return null;
 	}
-	@Override
-	public boolean hasAnnotationFileFor(String qualifiedTypeName) {
-		return false;
-	}
-	@Override
-	public char[][][] findTypeNames(final String qualifiedPackageName, String moduleName) {
-		// TODO: Revisit
-		return null;
-	}
 
 	@Override
 	public void initialize() throws IOException {
 		if (this.compliance == null) {
 			return;
 		}
-		this.releaseInHex = Integer.toHexString(Integer.parseInt(this.compliance));
-		Path filePath = this.file.toPath().resolve("lib").resolve("ct.sym"); //$NON-NLS-1$ //$NON-NLS-2$
+		this.releaseInHex = Integer.toHexString(Integer.parseInt(this.compliance)).toUpperCase();
+		Path filePath = this.jdkHome.toPath().resolve("lib").resolve("ct.sym"); //$NON-NLS-1$ //$NON-NLS-2$
 		URI t = filePath.toUri();
 		if (!Files.exists(filePath)) {
 			return;
@@ -118,9 +126,80 @@
 		if (!Files.exists(this.fs.getPath(this.releaseInHex))) {
 			throw new IllegalArgumentException("release " + this.compliance + " is not found in the system");  //$NON-NLS-1$//$NON-NLS-2$
 		}
+		super.initialize();
 	}
+	@Override
+	public void loadModules() {
+		// Modules below level 8 are not dealt with here. Leave it to ClasspathJrt
+		if (this.jdklevel <= ClassFileConstants.JDK1_8) {
+			super.loadModules();
+			return;
+		}
+		final Path modPath = this.fs.getPath(this.releaseInHex + "-modules"); //$NON-NLS-1$
+		if (!Files.exists(modPath)) {
+			throw new IllegalArgumentException("release " + this.compliance + " is not found in the system");  //$NON-NLS-1$//$NON-NLS-2$
+		}
+		this.modulePath = this.file.getPath() + "|" + modPath.toString(); //$NON-NLS-1$
+		Map<String, IModule> cache = ModulesCache.get(this.modulePath);
+		if (cache == null) {
+			try (DirectoryStream<java.nio.file.Path> stream = Files.newDirectoryStream(modPath)) {
+				for (final java.nio.file.Path subdir: stream) {
+						Files.walkFileTree(subdir, new FileVisitor<java.nio.file.Path>() {
+
+							@Override
+							public FileVisitResult preVisitDirectory(java.nio.file.Path dir, BasicFileAttributes attrs)
+									throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+
+							@Override
+							public FileVisitResult visitFile(java.nio.file.Path f, BasicFileAttributes attrs) throws IOException {
+								byte[] content = null;
+								if (Files.exists(f)) {
+									content = JRTUtil.safeReadBytes(f);
+									if (content == null)
+										return FileVisitResult.CONTINUE;
+									ClasspathJep247.this.acceptModule(content);
+									ClasspathJep247.this.moduleNamesCache.add(f.getFileName().toString());
+								}
+								return FileVisitResult.CONTINUE;
+							}
+
+							@Override
+							public FileVisitResult visitFileFailed(java.nio.file.Path f, IOException exc) throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+
+							@Override
+							public FileVisitResult postVisitDirectory(java.nio.file.Path dir, IOException exc) throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+						});
+				}
+			} catch (IOException e) {
+				e.printStackTrace();
+			}
+		} else {
+			this.moduleNamesCache.addAll(cache.keySet());
+		}
+	}
+	@Override
 	void acceptModule(ClassFileReader reader) {
-		// Nothing to do
+		// Modules below level 8 are not dealt with here. Leave it to ClasspathJrt
+		if (this.jdklevel <= ClassFileConstants.JDK1_8) {
+			super.acceptModule(reader);
+			return;
+		}
+		if (reader != null) {
+			IModule moduleDecl = reader.getModuleDeclaration();
+			if (moduleDecl != null) {
+				Map<String, IModule> cache = ModulesCache.get(this.modulePath);
+				if (cache == null) {
+					ModulesCache.put(this.modulePath, cache = new HashMap<String,IModule>());
+				}
+				cache.put(String.valueOf(moduleDecl.name()), moduleDecl);
+			}
+		}
 	}
 	protected void addToPackageCache(String packageName, boolean endsWithSep) {
 		if (this.packageCache.contains(packageName))
@@ -178,11 +257,6 @@
 		return singletonModuleNameIf(this.packageCache.contains(qualifiedPackageName));
 	}
 	@Override
-	public boolean hasCompilationUnit(String qualifiedPackageName, String moduleName) {
-		// TOOD: Revisit
-		return false;
-	}
-	@Override
 	public void reset() {
 		try {
 			super.reset();
@@ -224,8 +298,4 @@
 		return BINARY;
 	}
 
-	@Override
-	public IModule getModule() {
-		return null;
-	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.java
index 15030b8..ec3192b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJmod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.java
index 3c51f70..983fe89 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathJrt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -45,7 +48,7 @@
 	public File file;
 	protected ZipFile annotationZipFile;
 	protected boolean closeZipFileAtEnd;
-	private static HashMap<String, Map<String,IModule>> ModulesCache = new HashMap<>();
+	protected static HashMap<String, Map<String,IModule>> ModulesCache = new HashMap<>();
 	public final Set<String> moduleNamesCache;
 	//private Set<String> packageCache;
 	protected List<String> annotationPaths;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.java
index ee2ed15..3cd4760 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.java
new file mode 100644
index 0000000..3db8a77
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathMultiReleaseJar.java
@@ -0,0 +1,172 @@
+package org.aspectj.org.eclipse.jdt.internal.compiler.batch;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URI;
+import java.nio.file.DirectoryStream;
+import java.nio.file.FileSystemNotFoundException;
+import java.nio.file.FileSystems;
+import java.nio.file.FileVisitResult;
+import java.nio.file.FileVisitor;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.zip.ZipEntry;
+
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationDecorator;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRuleSet;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.IBinaryType;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.ExternalAnnotationStatus;
+import org.aspectj.org.eclipse.jdt.internal.compiler.util.SuffixConstants;
+import org.aspectj.org.eclipse.jdt.internal.compiler.util.Util;
+
+public class ClasspathMultiReleaseJar extends ClasspathJar {
+	private java.nio.file.FileSystem fs = null;
+	Path releasePath = null;
+	String compliance = null;
+
+	public ClasspathMultiReleaseJar(File file, boolean closeZipFileAtEnd,
+			AccessRuleSet accessRuleSet, String destinationPath, String compliance) {
+		super(file, closeZipFileAtEnd, accessRuleSet, destinationPath);
+		this.compliance = compliance;
+	}
+	@Override
+	public void initialize() throws IOException {
+		super.initialize();
+		URI t = this.file.toURI();
+		if (this.file.exists()) {
+			URI uri = URI.create("jar:file:" + t.getRawPath()); //$NON-NLS-1$
+			try {
+				this.fs = FileSystems.getFileSystem(uri);
+			} catch(FileSystemNotFoundException fne) {
+				// Ignore and move on
+			}
+			if (this.fs == null) {
+				HashMap<String, ?> env = new HashMap<>();
+				try {
+					this.fs = FileSystems.newFileSystem(uri, env);
+				} catch (IOException e) {
+					// return
+				}
+			}
+			this.releasePath = this.fs.getPath("/", "META-INF", "versions", this.compliance); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+			if (!Files.exists(this.releasePath)) {
+				this.releasePath = null;
+			}
+		}
+	}
+	@SuppressWarnings("rawtypes")
+	@Override
+	public synchronized char[][] getModulesDeclaringPackage(String qualifiedPackageName, String moduleName) {
+		if (this.releasePath == null) {
+			return super.getModulesDeclaringPackage(qualifiedPackageName, moduleName);
+		}
+		if (this.packageCache != null)
+			return singletonModuleNameIf(this.packageCache.contains(qualifiedPackageName));
+
+		this.packageCache = new HashSet<>(41);
+		this.packageCache.add(Util.EMPTY_STRING);
+		
+		for (Enumeration e = this.zipFile.entries(); e.hasMoreElements(); ) {
+			String fileName = ((ZipEntry) e.nextElement()).getName();
+			addToPackageCache(fileName, false);
+		}
+		try {
+			if (this.releasePath != null && Files.exists(this.releasePath)) {
+				// go through the packages
+				try (DirectoryStream<java.nio.file.Path> stream = Files.newDirectoryStream(this.releasePath)) {
+					for (final java.nio.file.Path subdir: stream) {
+						Files.walkFileTree(subdir, new FileVisitor<java.nio.file.Path>() {
+							@Override
+							public FileVisitResult preVisitDirectory(java.nio.file.Path dir, BasicFileAttributes attrs)
+									throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+							@Override
+							public FileVisitResult visitFile(java.nio.file.Path f, BasicFileAttributes attrs)
+									throws IOException {
+								Path p = ClasspathMultiReleaseJar.this.releasePath.relativize(f);
+								addToPackageCache(p.toString(), false);
+								return FileVisitResult.CONTINUE;
+							}
+
+							@Override
+							public FileVisitResult visitFileFailed(java.nio.file.Path f, IOException exc) throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+
+							@Override
+							public FileVisitResult postVisitDirectory(java.nio.file.Path dir, IOException exc)
+									throws IOException {
+								return FileVisitResult.CONTINUE;
+							}
+						});
+					}
+				}
+			}
+		} catch (Exception e) {
+			e.printStackTrace();
+			// move on;
+		}
+		return singletonModuleNameIf(this.packageCache.contains(qualifiedPackageName));
+	}
+	@Override
+	public NameEnvironmentAnswer findClass(char[] binaryFileName, String qualifiedPackageName, String moduleName, String qualifiedBinaryFileName, boolean asBinaryOnly) {
+		if (!isPackage(qualifiedPackageName, moduleName)) return null; // most common case
+		if (this.releasePath != null) {
+			try {
+				Path p = this.releasePath.resolve(qualifiedBinaryFileName);
+				byte[] content = Files.readAllBytes(p);
+				IBinaryType reader = null;
+				if (content != null) {
+					reader = new ClassFileReader(content, qualifiedBinaryFileName.toCharArray());
+				}
+				if (reader != null) {
+					char[] modName = this.module == null ? null : this.module.name();
+					if (reader instanceof ClassFileReader) {
+						ClassFileReader classReader = (ClassFileReader) reader;
+						if (classReader.moduleName == null)
+							classReader.moduleName = modName;
+						else
+							modName = classReader.moduleName;
+						}
+					String fileNameWithoutExtension = qualifiedBinaryFileName.substring(0, qualifiedBinaryFileName.length() - SuffixConstants.SUFFIX_CLASS.length);
+					searchPaths:
+						if (this.annotationPaths != null) {
+							String qualifiedClassName = qualifiedBinaryFileName.substring(0, qualifiedBinaryFileName.length()-SuffixConstants.EXTENSION_CLASS.length()-1);
+							for (String annotationPath : this.annotationPaths) {
+								try {
+									if (this.annotationZipFile == null) {
+										this.annotationZipFile = ExternalAnnotationDecorator.getAnnotationZipFile(annotationPath, null);
+									}
+									reader = ExternalAnnotationDecorator.create(reader, annotationPath, qualifiedClassName, this.annotationZipFile);
+
+									if (reader.getExternalAnnotationStatus() == ExternalAnnotationStatus.TYPE_IS_ANNOTATED) {
+										break searchPaths;
+									}
+								} catch (IOException e) {
+									// don't let error on annotations fail class reading
+								}
+							}
+							// location is configured for external annotations, but no .eea found, decorate in order to answer NO_EEA_FILE:
+							reader = new ExternalAnnotationDecorator(reader, null);
+						}
+					if (this.accessRuleSet == null)
+						return new NameEnvironmentAnswer(reader, null, modName);
+					return new NameEnvironmentAnswer(reader, 
+							this.accessRuleSet.getViolatedRestriction(fileNameWithoutExtension.toCharArray()), 
+							modName);
+				}
+			} catch (IOException | ClassFormatException e) {
+				// treat as if class file is missing
+			}
+		}
+		return super.findClass(binaryFileName, qualifiedPackageName, moduleName, qualifiedBinaryFileName, asBinaryOnly);
+	}
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.java
index 966c923..8731bb5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ClasspathSourceJar.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.java
index 9e0511d..cd08224 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/CompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.java
index 6da2a0c..f85a3f2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.java
index a132048..a667dd0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/FileSystem.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -173,16 +176,19 @@
 	classPathNames is a collection is Strings representing the full path of each class path
 	initialFileNames is a collection is Strings, the trailing '.java' will be removed if its not already.
 */
-public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding, int mode) { // New AspectJ Extension - extra int flag for mode, was 'public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding) {'
+public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding, int mode, String release) {
+	this(classpathNames, initialFileNames, encoding, null, mode, release);
+}
+public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding, Collection<String> limitModules, int mode, String release) { // New AspectJ Extension - extra int flag for mode, was 'public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding) {'
 	final int classpathSize = classpathNames.length;
 	this.classpaths = new Classpath[classpathSize];
 	int counter = 0;
 	for (int i = 0; i < classpathSize; i++) {
-		Classpath classpath = getClasspath(classpathNames[i], encoding, null, mode); // New AspectJ Extension - pass extra mode
+		Classpath classpath = getClasspath(classpathNames[i], encoding, null, null, mode, release); // New AspectJ Extension - pass extra mode
 		if (classpath==null) continue; // AspectJ Extension
 		try {
 			classpath.initialize();
-			for (String moduleName : classpath.getModuleNames(null))
+			for (String moduleName : classpath.getModuleNames(limitModules))
 				this.moduleLocations.put(moduleName, classpath);
 			this.classpaths[counter++] = classpath;
 		} catch (IOException e) {
@@ -245,10 +251,10 @@
 	this(paths, initialFileNames, annotationsFromClasspath, null);
 }
 public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet) {
-	return getClasspath(classpathName, encoding, false, accessRuleSet, null, null);
+	return getClasspath(classpathName, encoding, false, accessRuleSet, null, null, null);
 }
-public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet, Map<String, String> options) {
-	return getClasspath(classpathName, encoding, false, accessRuleSet, null, options);
+public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet, Map<String, String> options, String release) {
+	return getClasspath(classpathName, encoding, false, accessRuleSet, null, options, release);
 }
 //New AspectJ Extension
 public static Classpath getJrtClasspath(String jdkHome, String encoding, AccessRuleSet accessRuleSet, Map<String, String> options) {
@@ -256,12 +262,13 @@
 }
 
 // Uses the mode rather than a boolean, so we can specify JUST binary (ClasspathLocation.BINARY)
-public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet,int mode) {
-	return getClasspath(classpathName, encoding, mode, accessRuleSet, null, null);
+public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet, int mode, String release) {
+//	return getClasspath(classpathName, encoding, mode, accessRuleSet, null, null);
+	return getClasspath(classpathName, encoding, mode, accessRuleSet, null, null, release);
 }
 // AspectJ - make this accessible from external consumers wanting to build classpath entry objects
-public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet,Map options, int mode) {
-	return getClasspath(classpathName, encoding, mode, accessRuleSet, null, options);
+public static Classpath getClasspath(String classpathName, String encoding, AccessRuleSet accessRuleSet,Map options, int mode, String release) {
+	return getClasspath(classpathName, encoding, mode, accessRuleSet, null, options, release);
 }
 // End AspectJ
 
@@ -275,13 +282,13 @@
 // 		String destinationPath) {
 public static Classpath getClasspath(String classpathName, String encoding,
 		boolean isSourceOnly, AccessRuleSet accessRuleSet,
-		String destinationPath, Map<String, String> options) {
-	return getClasspath(classpathName,encoding,isSourceOnly ? ClasspathLocation.SOURCE :ClasspathLocation.SOURCE|ClasspathLocation.BINARY,accessRuleSet,destinationPath,options);
+		String destinationPath, Map<String, String> options, String release) {
+	return getClasspath(classpathName,encoding,isSourceOnly ? ClasspathLocation.SOURCE :ClasspathLocation.SOURCE|ClasspathLocation.BINARY,accessRuleSet,destinationPath,options,release);
 }
 
 public static Classpath getClasspath(String classpathName, String encoding,
 		int mode, AccessRuleSet accessRuleSet,
-		String destinationPath, Map<String,String> options) {
+		String destinationPath, Map<String,String> options, String release) {
 	// End AspectJ Extension
 	Classpath result = null;
 	File file = new File(convertPathSeparators(classpathName));
@@ -350,7 +357,10 @@
 						JRT_CLASSPATH_CACHE.put(file, result);
 					}
 				} else {
-					result = new ClasspathJar(file, true, accessRuleSet, null);
+					result = 
+							(release == null) ?
+									new ClasspathJar(file, true, accessRuleSet, null) :
+										new ClasspathMultiReleaseJar(file, true, accessRuleSet, destinationPath, release);
 				}
 			}
 		} else if (format == Util.JMOD_FILE) {
@@ -422,7 +432,7 @@
 public void scanForModules(Parser parser) {
 	for (int i = 0, max = this.classpaths.length; i < max; i++) {
 		File file = new File(this.classpaths[i].getPath());
-		IModule iModule = ModuleFinder.scanForModule(this.classpaths[i], file, parser, false);
+		IModule iModule = ModuleFinder.scanForModule(this.classpaths[i], file, parser, false, null);
 		if (iModule != null)
 			this.moduleLocations.put(String.valueOf(iModule.name()), this.classpaths[i]);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.java
index e11e38d..5181961 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/Main.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -641,7 +644,7 @@
 					printErr(this.main.bind(
 								severity,
 								Integer.toString(globalErrorCount),
-								new String(fileName)));
+								fileName));
 					final String errorReportSource = errorReportSource(problem, null, 0);
 					this.printlnErr(errorReportSource);
 					this.printlnErr(problem.getMessage());
@@ -1389,6 +1392,7 @@
 	// == Main.NONE: absorbent element, do not output class files;
 	// else: use as the path of the directory into which class files must
 	//       be written.
+	protected boolean enablePreview;
 	protected String releaseVersion;
 	private boolean didSpecifySource;
 	private boolean didSpecifyTarget;
@@ -1645,7 +1649,9 @@
 			customEncoding,
 			isSourceOnly,
 			accessRuleSet,
-			destPath, this.options);
+			destPath, 
+			this.options,
+			this.releaseVersion);
 	if (currentClasspath != null) {
 		paths.add(currentClasspath);
 	} else if (currentClasspathName.length() != 0) {
@@ -1724,7 +1730,11 @@
  * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_4</code></li>
  * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_5</code></li>
  * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_6</code></li>
- * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_7</code></li>
+ * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_8</code></li>
+ * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK9</code></li>
+ * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK10</code></li>
+ * <li><code>org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK11</code></li>
+ * 
  * </ul>
  * @param minimalSupportedVersion the given minimal version
  * @return true if and only if the running VM supports the given minimal version, false otherwise
@@ -1749,30 +1759,7 @@
 		// by default we don't support a class file version we cannot recognize
 		return false;
 	}
-	switch(majorVersion) {
-		case ClassFileConstants.MAJOR_VERSION_1_1 : // 1.0 and 1.1
-			return ClassFileConstants.JDK1_1 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_2 : // 1.2
-			return ClassFileConstants.JDK1_2 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_3 : // 1.3
-			return ClassFileConstants.JDK1_3 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_4 : // 1.4
-			return ClassFileConstants.JDK1_4 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_5 : // 1.5
-			return ClassFileConstants.JDK1_5 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_6 : // 1.6
-			return ClassFileConstants.JDK1_6 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_7 : // 1.7
-			return ClassFileConstants.JDK1_7 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_1_8: // 1.8
-			return ClassFileConstants.JDK1_8 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_9: // 9
-			return ClassFileConstants.JDK9 >= minimalSupportedVersion;
-		case ClassFileConstants.MAJOR_VERSION_10: // 10
-			return ClassFileConstants.JDK10 >= minimalSupportedVersion;
-	}
-	// unknown version
-	return false;
+	return ClassFileConstants.getComplianceLevelForJavaVersion(majorVersion) >=minimalSupportedVersion;
 }
 /*
  *  Low-level API performing the actual compilation
@@ -2205,6 +2192,16 @@
 					mode = DEFAULT;
 					continue;
 				}
+				if (currentArg.equals("-11") || currentArg.equals("-11.0")) { //$NON-NLS-1$ //$NON-NLS-2$
+					if (didSpecifyCompliance) {
+						throw new IllegalArgumentException(
+							this.bind("configure.duplicateCompliance", currentArg)); //$NON-NLS-1$
+					}
+					didSpecifyCompliance = true;
+					this.options.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_11);
+					mode = DEFAULT;
+					continue;
+				}
 				if (currentArg.equals("-d")) { //$NON-NLS-1$
 					if (this.destinationPath != null) {
 						StringBuffer errorMessage = new StringBuffer();
@@ -2238,6 +2235,11 @@
 					mode = INSIDE_BOOTCLASSPATH_start;
 					continue;
 				}
+				if (currentArg.equals("--enable-preview")) { //$NON-NLS-1$
+					this.enablePreview = true;
+					mode = DEFAULT;
+					continue;
+				}
 				if (currentArg.equals("--system")) { //$NON-NLS-1$
 					mode = INSIDE_SYSTEM;
 					continue;
@@ -2745,6 +2747,8 @@
 					this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_9);
 				} else if (currentArg.equals("10") || currentArg.equals("10.0")) { //$NON-NLS-1$//$NON-NLS-2$
 					this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_10);
+				} else if (currentArg.equals("11") || currentArg.equals("11.0")) { //$NON-NLS-1$//$NON-NLS-2$
+					this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_11);
 				}
 				else if (currentArg.equals("jsr14")) { //$NON-NLS-1$
 					this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_JSR14);
@@ -2791,7 +2795,7 @@
 				// If release >= 9, the following are disallowed
 				// --system and --upgrade-module-path
 
-				// -source and -target are diasllowed for any --release
+				// -source and -target are disallowed for any --release
 				this.releaseVersion = currentArg;
 				long releaseToJDKLevel = CompilerOptions.releaseToJDKLevel(currentArg);
 				if (releaseToJDKLevel == 0) {
@@ -2832,6 +2836,8 @@
 					this.options.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_9);
 				} else if (currentArg.equals("10") ||  currentArg.equals("10.0")) { //$NON-NLS-1$//$NON-NLS-2$
 					this.options.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_10);
+				} else if (currentArg.equals("11") ||  currentArg.equals("11.0")) { //$NON-NLS-1$//$NON-NLS-2$
+					this.options.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_11);
 				} else {
 					throw new IllegalArgumentException(this.bind("configure.source", currentArg)); //$NON-NLS-1$
 				}
@@ -3109,6 +3115,11 @@
  * */
  
 	}
+	if (this.enablePreview) {
+		this.options.put(
+				CompilerOptions.OPTION_EnablePreviews,
+				CompilerOptions.ENABLED);
+	}
 
 	// set DocCommentSupport, with appropriate side effects on defaults if
 	// javadoc is not enabled
@@ -3605,10 +3616,10 @@
 				// result =
 				// 		(ArrayList<Classpath>) ModuleFinder.findModules(file, null, getNewParser(), this.options, true);
 				// to:
-				result.addAll(ModuleFinder.findModules(file, null, getNewParser(), this.options, true));
+				result.addAll(ModuleFinder.findModules(file, null, getNewParser(), this.options, true, this.releaseVersion));
 				// End AspectJ
 			} else {
-				Classpath modulePath = ModuleFinder.findModule(file, null, getNewParser(), this.options, true);
+				Classpath modulePath = ModuleFinder.findModule(file, null, getNewParser(), this.options, true, this.releaseVersion);
 				if (modulePath != null)
 					result.add(modulePath);
 			}
@@ -3634,7 +3645,7 @@
 				// 1. Create FileSystem.Classpath for each module
 				// 2. Iterator each module in case of directory for source files and add to this.fileNames
 
-				List<Classpath> modules = ModuleFinder.findModules(dir, this.destinationPath, getNewParser(), this.options, false);
+				List<Classpath> modules = ModuleFinder.findModules(dir, this.destinationPath, getNewParser(), this.options, false, this.releaseVersion);
 				for (Classpath classpath : modules) {
 					result.add(classpath);
 					Path modLocation = Paths.get(classpath.getPath()).toAbsolutePath();
@@ -3683,7 +3694,7 @@
 		if ((classProp == null) || (classProp.length() == 0)) {
 			addPendingErrors(this.bind("configure.noClasspath")); //$NON-NLS-1$
 			// AspectJ: Do we need to force ClasspathLocation.BINARY here?
-			final Classpath classpath = FileSystem.getClasspath(System.getProperty("user.dir"), customEncoding, null, this.options);//$NON-NLS-1$
+			final Classpath classpath = FileSystem.getClasspath(System.getProperty("user.dir"), customEncoding, null, this.options, this.releaseVersion);//$NON-NLS-1$
 			if (classpath != null) {
 				initial.add(classpath);
 			}
@@ -3694,7 +3705,7 @@
 				token = tokenizer.nextToken();
 				// AspectJ: Do we need to switch this to force ClasspathLocation.BINARY ?
 				FileSystem.Classpath currentClasspath = FileSystem
-						.getClasspath(token, customEncoding, null, this.options);
+						.getClasspath(token, customEncoding, null, this.options, this.releaseVersion);
 				if (currentClasspath != null) {
 					initial.add(currentClasspath);
 				} else if (token.length() != 0) {
@@ -3774,7 +3785,7 @@
 						FileSystem.Classpath classpath =
 							FileSystem.getClasspath(
 									current[j].getAbsolutePath(),
-									null, null, this.options);
+									null, null, this.options, this.releaseVersion);
 						if (classpath != null) {
 							result.add(classpath);
 						}
@@ -3835,7 +3846,7 @@
 						FileSystem.Classpath classpath =
 							FileSystem.getClasspath(
 									current[j].getAbsolutePath(),
-									null, null, this.options);
+									null, null, this.options, this.releaseVersion);
 						if (classpath != null) {
 							result.add(classpath);
 						}
@@ -5464,10 +5475,31 @@
 				this.options.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_10);
 				if (!this.didSpecifyTarget) this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_10);
 			}
+		} else {
+			if (!this.didSpecifyTarget) {
+				if (this.didSpecifySource) {
+					String source = this.options.get(CompilerOptions.OPTION_Source);
+					if (CompilerOptions.VERSION_1_3.equals(source)
+							|| CompilerOptions.VERSION_1_4.equals(source)) {
+						if (!this.didSpecifyTarget) this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_1_4);
+					} else if (CompilerOptions.VERSION_1_5.equals(source)
+							|| CompilerOptions.VERSION_1_6.equals(source)) {
+						this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_1_6);
+					} else {
+						if (CompilerOptions.versionToJdkLevel(source) > 0)
+							this.options.put(CompilerOptions.OPTION_TargetPlatform, source);
+					}
+				} else {
+					if (CompilerOptions.versionToJdkLevel(version) > 0) {
+						this.options.put(CompilerOptions.OPTION_Source, version);
+						this.options.put(CompilerOptions.OPTION_TargetPlatform, version);
+					}
+				}
+			}
 		}
 
 	} else if (this.didSpecifySource) {
-		Object version = this.options.get(CompilerOptions.OPTION_Source);
+		String version = this.options.get(CompilerOptions.OPTION_Source);
 		// default is source 1.3 target 1.2 and compliance 1.4
 		if (CompilerOptions.VERSION_1_4.equals(version)) {
 			if (!didSpecifyCompliance) this.options.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_1_4);
@@ -5490,6 +5522,11 @@
 		} else if (CompilerOptions.VERSION_10.equals(version)) {
 			if (!didSpecifyCompliance) this.options.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_10);
 			if (!this.didSpecifyTarget) this.options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_10);
+		} else {
+			if (CompilerOptions.versionToJdkLevel(version) > 0) {
+				if (!didSpecifyCompliance) this.options.put(CompilerOptions.OPTION_Compliance, version);
+				if (!this.didSpecifyTarget) this.options.put(CompilerOptions.OPTION_TargetPlatform, version);
+			}
 		}
 	}
 
@@ -5526,6 +5563,13 @@
 			&& this.complianceLevel < ClassFileConstants.JDK1_4) {
 		// compliance must be 1.4 if source is 1.4
 		throw new IllegalArgumentException(this.bind("configure.incompatibleComplianceForSource", this.options.get(CompilerOptions.OPTION_Compliance), CompilerOptions.VERSION_1_4)); //$NON-NLS-1$
+	} else {
+		long ver = CompilerOptions.versionToJdkLevel(sourceVersion);
+		if(this.complianceLevel < ver)
+			throw new IllegalArgumentException(this.bind("configure.incompatibleComplianceForSource", this.options.get(CompilerOptions.OPTION_Compliance), sourceVersion)); //$NON-NLS-1$
+	}
+	if (this.enablePreview && this.complianceLevel != ClassFileConstants.getLatestJDKLevel()) {
+		throw new IllegalArgumentException(this.bind("configure.unsupportedPreview")); //$NON-NLS-1$
 	}
 
 	// check and set compliance/source/target compatibilities
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.java
index 7bdda16..465e239 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/ModuleFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -19,6 +22,7 @@
 import java.util.StringTokenizer;
 import java.util.jar.JarFile;
 import java.util.jar.Manifest;
+import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
 
 import org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult;
@@ -35,45 +39,46 @@
 
 public class ModuleFinder {
 
-	public static List<FileSystem.Classpath> findModules(File f, String destinationPath, Parser parser, Map<String, String> options, boolean isModulepath) {
+	public static List<FileSystem.Classpath> findModules(File f, String destinationPath, Parser parser, Map<String, String> options, boolean isModulepath, String release) {
 		List<FileSystem.Classpath> collector = new ArrayList<>();
-		scanForModules(destinationPath, parser, options, isModulepath, false, collector, f);
+		scanForModules(destinationPath, parser, options, isModulepath, false, collector, f, release);
 		return collector;
 	}
 
 	protected static FileSystem.Classpath findModule(final File file, String destinationPath, Parser parser,
-			Map<String, String> options, boolean isModulepath) {
+			Map<String, String> options, boolean isModulepath, String release) {
 		FileSystem.Classpath modulePath = FileSystem.getClasspath(file.getAbsolutePath(), null, !isModulepath, null,
-				destinationPath == null ? null : (destinationPath + File.separator + file.getName()), options);
+				destinationPath == null ? null : (destinationPath + File.separator + file.getName()), options, release);
 		if (modulePath != null) {
-			scanForModule(modulePath, file, parser, isModulepath);
+			scanForModule(modulePath, file, parser, isModulepath, release);
 		}
 		return modulePath;
 	}
 	protected static void scanForModules(String destinationPath, Parser parser, Map<String, String> options, boolean isModulepath, 
-			boolean thisAnAutomodule, List<FileSystem.Classpath> collector, final File file) {
+			boolean thisAnAutomodule, List<FileSystem.Classpath> collector, final File file, String release) {
 		FileSystem.Classpath entry = FileSystem.getClasspath(
 				file.getAbsolutePath(),
 				null,
 				!isModulepath,
 				null,
 				destinationPath == null ? null : (destinationPath + File.separator + file.getName()), 
-				options);
+				options,
+				release);
 		if (entry != null) {
-			IModule module = scanForModule(entry, file, parser, thisAnAutomodule);
+			IModule module = scanForModule(entry, file, parser, thisAnAutomodule, release);
 			if (module != null) {
 				collector.add(entry);
 			} else {
 				if (file.isDirectory()) {
 					File[] files = file.listFiles();
 					for (File f : files) {
-						scanForModules(destinationPath, parser, options, isModulepath, isModulepath, collector, f);
+						scanForModules(destinationPath, parser, options, isModulepath, isModulepath, collector, f, release);
 					}
 				}
 			}
 		}
 	}
-	protected static IModule scanForModule(FileSystem.Classpath modulePath, final File file, Parser parser, boolean considerAutoModules) {
+	protected static IModule scanForModule(FileSystem.Classpath modulePath, final File file, Parser parser, boolean considerAutoModules, String release) {
 		IModule module = null;
 		if (file.isDirectory()) {
 			String[] list = file.list(new FilenameFilter() {
@@ -106,7 +111,7 @@
 		} else {
 			String moduleDescPath = getModulePathForArchive(file);
 			if (moduleDescPath != null) {
-				module = extractModuleFromArchive(file, modulePath, moduleDescPath);
+				module = extractModuleFromArchive(file, modulePath, moduleDescPath, release);
 			}
 		}
 		if (considerAutoModules && module == null && !(modulePath instanceof ClasspathJrt)) {
@@ -224,10 +229,17 @@
 		}
 		return null;
 	}
-	private static IModule extractModuleFromArchive(File file, Classpath pathEntry, String path) {
+	private static IModule extractModuleFromArchive(File file, Classpath pathEntry, String path, String release) {
 		ZipFile zipFile = null;
 		try {
 			zipFile = new ZipFile(file);
+			if (release != null) {
+				String releasePath = "META-INF/versions/" + release + "/" + path; //$NON-NLS-1$ //$NON-NLS-2$
+				ZipEntry entry = zipFile.getEntry(releasePath);
+				if (entry != null) {
+					path = releasePath;
+				}
+			}
 			ClassFileReader reader = ClassFileReader.read(zipFile, path);
 			IModule module = getModule(reader);
 			if (module != null) {
@@ -268,7 +280,7 @@
 		return null;
 	}
 	private static IModule extractModuleFromSource(File file, Parser parser, Classpath pathEntry) {
-		ICompilationUnit cu = new CompilationUnit(null, file.getAbsolutePath(), null);
+		ICompilationUnit cu = new CompilationUnit(null, file.getAbsolutePath(), null, pathEntry.getDestinationPath());
 		CompilationResult compilationResult = new CompilationResult(cu, 0, 1, 10);
 		CompilationUnitDeclaration unit = parser.parse(cu, compilationResult);
 		if (unit.isModuleInfo() && unit.moduleDeclaration != null) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
index 7923d00..c02926b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/batch/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
@@ -88,6 +91,7 @@
 configure.repetition = repetition must be a positive integer: {0}
 configure.maxProblems = max problems must be a positive integer: {0}
 configure.invalidNowarnOption = invalid syntax for nowarn option: {0}
+configure.unsupportedPreview = Preview of features is supported only at the latest source level
 
 configure.invalidErrorConfiguration = invalid error configuration: ''{0}''
 configure.invalidError = invalid error token: ''{0}''. Ignoring this error token and compiling
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
index 0aace73..3439a72 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
@@ -389,6 +392,16 @@
 	int tag = u1At(currentOffset);
 	currentOffset++;
 	switch (tag) {
+		case 'Z':
+			if ((this.standardAnnotationTagBits & TagBits.AnnotationDeprecated) != 0) {
+				// assume member_name is 'since', because @Deprecated has only one boolean member
+				int constantOffset = this.constantPoolOffsets[u2At(currentOffset)] - this.structOffset + 1;
+				if (i4At(constantOffset) == 1) {
+					this.standardAnnotationTagBits |= TagBits.AnnotationTerminallyDeprecated;
+				}
+			}
+			currentOffset += 2;
+			break;
 		case 'B':
 		case 'C':
 		case 'D':
@@ -396,7 +409,6 @@
 		case 'I':
 		case 'J':
 		case 'S':
-		case 'Z':
 		case 's':
 		case 'c':
 			currentOffset += 2;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.java
index 21d5280..de25658 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.java
index 2b6e092..3d19af2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithAnnotations.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.java
index 77ea850..4e98513 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/AnnotationMethodInfoWithTypeAnnotations.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Till Brychcy and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Till Brychcy - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.java
index f230c45..fb92114 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/BinaryTypeFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.java
index 4190183..14372dc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -80,6 +83,7 @@
 	int NameAndTypeTag = 12;
 	int MethodHandleTag = 15;
 	int MethodTypeTag = 16;
+	int DynamicTag = 17;
 	int InvokeDynamicTag = 18;
 	int ModuleTag = 19;
 	int PackageTag = 20;
@@ -97,6 +101,7 @@
 	int ConstantNameAndTypeFixedSize = 5;
 	int ConstantMethodHandleFixedSize = 4;
 	int ConstantMethodTypeFixedSize = 3;
+	int ConstantDynamicFixedSize = 5;
 	int ConstantInvokeDynamicFixedSize = 5;
 	int ConstantModuleFixedSize = 3;
 	int ConstantPackageFixedSize = 3;
@@ -122,12 +127,17 @@
 	int MAJOR_VERSION_1_8 = 52;
 	int MAJOR_VERSION_9 = 53;
 	int MAJOR_VERSION_10 = 54;
+	int MAJOR_VERSION_11 = 55;
+
+	int MAJOR_VERSION_0 = 44;
+	int MAJOR_LATEST_VERSION = MAJOR_VERSION_11;
 
 	int MINOR_VERSION_0 = 0;
 	int MINOR_VERSION_1 = 1;
 	int MINOR_VERSION_2 = 2;
 	int MINOR_VERSION_3 = 3;
 	int MINOR_VERSION_4 = 4;
+	int MINOR_VERSION_PREVIEW = 0xffff;
 
 	// JDK 1.1 -> 9, comparable value allowing to check both major/minor version at once 1.4.1 > 1.4.0
 	// 16 unsigned bits for major, then 16 bits for minor
@@ -141,7 +151,29 @@
 	long JDK1_8 = ((long)ClassFileConstants.MAJOR_VERSION_1_8 << 16) + ClassFileConstants.MINOR_VERSION_0;
 	long JDK9 = ((long)ClassFileConstants.MAJOR_VERSION_9 << 16) + ClassFileConstants.MINOR_VERSION_0;
 	long JDK10 = ((long)ClassFileConstants.MAJOR_VERSION_10 << 16) + ClassFileConstants.MINOR_VERSION_0;
+	long JDK11 = ((long)ClassFileConstants.MAJOR_VERSION_11 << 16) + ClassFileConstants.MINOR_VERSION_0;
 
+	public static long getLatestJDKLevel() {
+		return ((long)ClassFileConstants.MAJOR_LATEST_VERSION << 16) + ClassFileConstants.MINOR_VERSION_0;
+	}
+
+	/**
+	 * As we move away from declaring every compliance level explicitly (such as JDK11, JDK12 etc.),
+	 * this method can be used to compute the compliance level on the fly for a given Java major version.
+	 *
+	 * @param major Java major version
+	 * @return the compliance level for the given Java version
+	 */
+	public static long getComplianceLevelForJavaVersion(int major) {
+		switch(major) {
+			case ClassFileConstants.MAJOR_VERSION_1_1:
+				return ((long)ClassFileConstants.MAJOR_VERSION_1_1 << 16) + ClassFileConstants.MINOR_VERSION_3;
+			default:
+				if (major <= MAJOR_LATEST_VERSION)
+					return ((long)major << 16) + ClassFileConstants.MINOR_VERSION_0;
+		}
+		return 0;
+	}
 	/*
 	 * cldc1.1 is 45.3, but we modify it to be different from JDK1_1.
 	 * In the code gen, we will generate the same target value as JDK1_1
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.java
index e3b299f..6b3d7f8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileReader.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -67,6 +70,9 @@
 	private char[][][] missingTypeNames;
 	private int enclosingNameAndTypeIndex;
 	private char[] enclosingMethod;
+	private char[] nestHost;
+	private int nestMembersCount;
+	private char[][] nestMembers;
 
 private static String printTypeModifiers(int modifiers) {
 	java.io.ByteArrayOutputStream out = new java.io.ByteArrayOutputStream();
@@ -248,6 +254,10 @@
 					this.constantPoolOffsets[i] = readOffset;
 					readOffset += ClassFileConstants.ConstantMethodTypeFixedSize;
 					break;
+				case ClassFileConstants.DynamicTag :
+					this.constantPoolOffsets[i] = readOffset;
+					readOffset += ClassFileConstants.ConstantDynamicFixedSize;
+					break;
 				case ClassFileConstants.InvokeDynamicTag :
 					this.constantPoolOffsets[i] = readOffset;
 					readOffset += ClassFileConstants.ConstantInvokeDynamicFixedSize;
@@ -422,6 +432,27 @@
 						this.moduleDeclaration = ModuleInfo.createModule(this.reference, this.constantPoolOffsets, readOffset);
 						this.moduleName = this.moduleDeclaration.name();
 					}
+					break;
+				case 'N' :
+					if (CharOperation.equals(attributeName, AttributeNamesConstants.NestHost)) {
+						utf8Offset =
+							this.constantPoolOffsets[u2At(this.constantPoolOffsets[u2At(readOffset + 6)] + 1)];
+ 						this.nestHost = utf8At(utf8Offset + 3, u2At(utf8Offset + 1));
+					} else if (CharOperation.equals(attributeName, AttributeNamesConstants.NestMembers)) {
+						int offset = readOffset + 6;
+						this.nestMembersCount = u2At(offset);
+						if (this.nestMembersCount != 0) {
+							offset += 2;
+							this.nestMembers = new char[this.nestMembersCount][];
+							for (int j = 0; j < this.nestMembersCount; j++) {
+								utf8Offset =
+									this.constantPoolOffsets[u2At(this.constantPoolOffsets[u2At(offset)] + 1)];
+		 						this.nestMembers[j] = utf8At(utf8Offset + 3, u2At(utf8Offset + 1));
+		 						offset += 2;
+							}
+						}
+					}
+					break;
 			}
 			readOffset += (6 + u4At(readOffset + 2));
 		}
@@ -442,6 +473,10 @@
 	}
 }
 
+public char[] getNestHost() {
+	return this.nestHost;
+}
+
 @Override
 public ExternalAnnotationStatus getExternalAnnotationStatus() {
 	return ExternalAnnotationStatus.NOT_EEA_CONFIGURED;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.java
index cef2313..0836a57 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.java
index ecabdf3..47d2869 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ClassFormatException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.java
index b7f574b..d4fc9a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ElementValuePairInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.java
index 126dd34..3455273 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationDecorator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 Google, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     Stefan Xenos <sxenos@gmail.com> (Google) - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.java
index 6414844..61c84eb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ExternalAnnotationProvider.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java
index 6c65fe3..fec6ef9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.java
index 41b3851..782130b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2013 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.java
index 05791a8..d939da6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/FieldInfoWithTypeAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2013 GoPivotal, Inc. All Rights Reserved.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2013 GoPivotal, Inc.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *        Andy Clement (GoPivotal, Inc) aclement@gopivotal.com - Contributions for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.java
index 6ff1b88..f4c628b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/InnerClassInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java
index b997f10..7df38b3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.java
index 05849fc..ad640ff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithAnnotations.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2018 BEA Systems, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.java
index 049f551..8144bcf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithParameterAnnotations.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com  - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.java
index 84cf622..bdc8f49 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/MethodInfoWithTypeAnnotations.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2016 GoPivotal, Inc. All Rights Reserved.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2016 GoPivotal, Inc.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *        Andy Clement (GoPivotal, Inc) aclement@gopivotal.com - Contributions for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.java
index 2d7f4da..f76c530 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/ModuleInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.java
index fee61fe..67a1ba5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/NonNullDefaultAwareTypeAnnotationWalker.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2018 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.java
index 322f827..a34b87e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2016 GoPivotal, Inc. All Rights Reserved.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2016 GoPivotal, Inc.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *        Andy Clement (GoPivotal, Inc) aclement@gopivotal.com - Contributions for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.java
index 234060d..dd73e7a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/classfmt/TypeAnnotationWalker.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.java
index af71de4..a75a9a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationTargetTypeConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationTargetTypeConstants.java
index f8603df..0ec4198 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationTargetTypeConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AnnotationTargetTypeConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.java
index 5e102d6..9cae90b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/AttributeNamesConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -47,4 +50,7 @@
 	final char[] RuntimeInvisibleTypeAnnotationsName = "RuntimeInvisibleTypeAnnotations".toCharArray(); //$NON-NLS-1$
 	// jep118
 	final char[] MethodParametersName = "MethodParameters".toCharArray(); //$NON-NLS-1$
+	// jep181
+	final char[] NestHost = "NestHost".toCharArray(); //$NON-NLS-1$
+	final char[] NestMembers = "NestMembers".toCharArray(); //$NON-NLS-1$
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java
index 2b3d9fd..a51c387 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.java
index 2fb4ff6..9f35b9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CachedIndexEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.java
index e1bfeaa..152f4bc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CaseLabel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.java
index 1d7014c..45b08a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CharArrayCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
index 3ab6199..54e1fb4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -3432,17 +3435,16 @@
 						&& (options.complianceLevel >= ClassFileConstants.JDK1_4 || !(isImplicitThisReceiver && codegenBinding.isStatic()))
 						&& codegenBinding.declaringClass.id != TypeIds.T_JavaLangObject) // no change for Object methods
 					|| !codegenBinding.declaringClass.canBeSeenBy(currentScope)) {
-				TypeBinding erasure = actualReceiverType.erasure();
-				if (erasure.isIntersectionType18()) {
-					TypeBinding[] intersectingTypes = ((IntersectionTypeBinding18)erasure).getIntersectingTypes();
+				if (actualReceiverType.isIntersectionType18()) {
+					TypeBinding[] intersectingTypes = ((IntersectionTypeBinding18)actualReceiverType).getIntersectingTypes();
 					for(int i = 0; i < intersectingTypes.length; i++) {
 						if (intersectingTypes[i].findSuperTypeOriginatingFrom(constantPoolDeclaringClass) != null) {
-							constantPoolDeclaringClass = intersectingTypes[i];
+							constantPoolDeclaringClass = intersectingTypes[i].erasure();
 							break;
 						}
 					}
 				} else {
-					constantPoolDeclaringClass = erasure;
+					constantPoolDeclaringClass = actualReceiverType.erasure();
 				}
 			}
 		}				
@@ -6069,7 +6071,7 @@
 	this.stackDepth++;
 	if (this.stackDepth > this.stackMax)
 		this.stackMax = this.stackDepth;
-	if (this.classFileOffset + 2 >= this.bCodeStream.length) {
+	if (this.classFileOffset + 3 >= this.bCodeStream.length) {
 		resizeByteArray();
 	}
 	this.position++;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.java
index 6545e41..57cdf9e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ConstantPool.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -892,7 +895,7 @@
 
 		return index;
 	}
-	public int literalIndexForInvokeDynamic(int bootStrapIndex, char[] selector, char[] descriptor) {
+	private int literalIndexForInvokeAndConstantDynamic(int bootStrapIndex, char[] selector, char[] descriptor, int tag) {
 		int index;
 		if ((index = putInDynamicCacheIfAbsent(bootStrapIndex, selector, descriptor, this.currentIndex)) < 0) {
 			this.currentIndex++;
@@ -906,7 +909,7 @@
 			}
 			this.offsets[index] = this.currentOffset;
 
-			writeU1(InvokeDynamicTag);
+			writeU1(tag);
 			int classIndexOffset = this.currentOffset;
 			if (this.currentOffset + 4 >= this.poolContent.length) {
 				resizePoolContents(4);
@@ -922,6 +925,13 @@
 		}
 		return index;
 	}
+	// CONSTANT_Dynamic_info JVMS 4.4.10 /jep 309
+	public int literalIndexForDynamic(int bootStrapIndex, char[] selector, char[] descriptor) {
+		return literalIndexForInvokeAndConstantDynamic(bootStrapIndex, selector, descriptor, DynamicTag);
+	}
+	public int literalIndexForInvokeDynamic(int bootStrapIndex, char[] selector, char[] descriptor) {
+		return literalIndexForInvokeAndConstantDynamic(bootStrapIndex, selector, descriptor, InvokeDynamicTag);
+	}
 	public int literalIndexForField(char[] declaringClass, char[] name, char[] signature) {
 		int index;
 		if ((index = putInCacheIfAbsent(declaringClass, name, signature, this.currentIndex)) < 0) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.java
index 0fc612f..7052394 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/DoubleCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.java
index 502c28e..2b592f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ExceptionLabel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.java
index 463b6fd..7c09710 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/FloatCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.java
index 50451e6..a0ddede 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/IntegerCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.java
index ffa3a35..00663d6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Label.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.java
index 4dec4d1..57020a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/LongCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.java
index edeeb48..82808c1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/MultiCatchExceptionLabel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.java
index dfac962..bc7ea21 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/ObjectCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Opcodes.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Opcodes.java
index 30354ed..2b36128 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Opcodes.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/Opcodes.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.java
index 9e4e512..b94a119 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrame.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.java
index 0478913..1aa40c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/StackMapFrameCodeStream.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.java
index 5ce640c..d649330 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/TypeAnnotationCodeStream.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.java
index a3fba3b..00e075e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/codegen/VerificationTypeInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.java
index 1f01ba3..12ef021 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRestriction.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.java
index 1f600ac..863e5b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.java
index b9492b2..85f6ab8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AccessRuleSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.java
index d1307de..6dc7979 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/AutomaticModuleNaming.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Till Brychcy and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Till Brychcy - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.java
index 5ac0d38..787fe59 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ClassSignature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2010 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.java
index 3e48664..e3c825f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/EnumConstantSignature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2010 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.java
index b6633ef..b7529ab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2018 BEA Systems, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.java
index cfac31e..fe3bf70 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryElementValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    tyeung@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.java
index 9bb4b27..287dc8e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.java
index ccdbc20..98bb77b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.java
index c7945e2..43de90e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.java
index 37ae03d..b99f7a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryNestedType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.java
index 2440488..797f061 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.java
index 3df6ff4..38df4da 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IBinaryTypeAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2013 GoPivotal, Inc. All Rights Reserved.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2013 GoPivotal, Inc.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *        Andy Clement (GoPivotal, Inc) aclement@gopivotal.com - Contributions for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.java
index 99a4537..a4aa0a1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ICompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.java
index 4b4d3ae..cd79c89 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IDependent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.java
index 37f5dd6..8e424e9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.java
index 40ba36f..e330fb6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.java
index 681ca1d..5cd4480 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IGenericType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.java
index 738be8a..e784a9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.java
index d4a70bb..0b90ed8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModuleAwareNameEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.java
index a82539e..f330032 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IModulePathEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.java
index 0f8b22e..160f560 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IMultiModuleEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.java
index b619399..cda7cb1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.java
index 48a6688..235fa46 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/INameEnvironmentExtension.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.java
index 2ef79a9..3098432 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.java
index c179c47..8c9797e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceImport.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.java
index 476e61a..3b96158 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.java
index ab77e54..77703e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceModule.java
@@ -1,13 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.java
index 8361de1..e1fce5a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ISourceType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.java
index 9ed0e0e..c4e8020 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ITypeAnnotationWalker.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.java
index 08ba650..080ce55 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/IUpdatableModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.java
index 158e0ee..bc997f6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/ModuleReferenceImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.java
index 108893a..9f3f7dd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/NameEnvironmentAnswer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.java
index a0f4d84..4cc5dbb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/env/PackageExportImpl.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.java
index 19be066..4abc987 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ConditionalFlowInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.java
index 0047d90..467fde0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionHandlingFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.java
index 724dbb3..a0f77b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/ExceptionInferenceFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.java
index 6ac8baf..bc23f74 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FieldInitsFakingFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Till Brychcy and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Till Brychcy - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.java
index 20bb17e..f590fb1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FinallyFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.java
index 56db3ce..2f02eb4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowContext.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.java
index 69c0ad7..606b9fd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/FlowInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java
index 611ed55..8b5a575 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.java
index 4acefb9..e7df375 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/InsideSubRoutineFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.java
index c44a480..5606b1a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LabelFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.java
index 93fdb8b..8610aa8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/LoopingFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.java
index 0a09fdd..502d8b8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/SwitchFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.java
index d865e7b..4478f68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/TryFlowContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 GK Software AG and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java
index 4b91e7b..1da0417 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.java
index 0bce07a..54cf2b3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/BooleanConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.java
index 4803f04..972d6c6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ByteConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.java
index b8ec51e..724ba84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CharConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java
index fcdbc5d..941a0e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java
@@ -1,10 +1,13 @@
 //AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -200,6 +203,8 @@
 	public static final String OPTION_ReportAPILeak = "org.eclipse.jdt.core.compiler.problem.APILeak"; //$NON-NLS-1$
 	public static final String OPTION_ReportUnstableAutoModuleName = "org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName";   //$NON-NLS-1$
 
+	public static final String OPTION_EnablePreviews = "org.eclipse.jdt.core.compiler.problem.EnablePreviews"; //$NON-NLS-1$
+
 	/**
 	 * Possible values for configurable options
 	 */
@@ -219,6 +224,7 @@
 	public static final String VERSION_1_8 = "1.8"; //$NON-NLS-1$
 	public static final String VERSION_9 = "9"; //$NON-NLS-1$
 	public static final String VERSION_10 = "10"; //$NON-NLS-1$
+	public static final String VERSION_11 = "11"; //$NON-NLS-1$
 	public static final String ERROR = "error"; //$NON-NLS-1$
 	public static final String WARNING = "warning"; //$NON-NLS-1$
 	public static final String INFO = "info"; //$NON-NLS-1$
@@ -328,6 +334,8 @@
 	public static final int UsingTerminallyDeprecatedAPI = IrritantSet.GROUP2 | ASTNode.Bit24;
 	public static final int APILeak = IrritantSet.GROUP2 | ASTNode.Bit25;
 	public static final int UnstableAutoModuleName = IrritantSet.GROUP2 | ASTNode.Bit26;
+	// Dummy feature, but
+	//public static final int DummyPreviewFeatureWarning = IrritantSet.GROUP2 | ASTNode.Bit27;
 
 	// AspectJ Extension
 	// Not sure we need this anymore...
@@ -521,6 +529,9 @@
 	/** Not directly configurable, derived from other options by LookupEnvironment.usesNullTypeAnnotations() */
 	public Boolean useNullTypeAnnotations = null;
 
+	/** Master flag to enabled/disable all preview features */
+	public boolean enablePreviewFeatures;
+
 	// keep in sync with warningTokenToIrritant and warningTokenFromIrritant
 	public final static String[] warningTokens = {
 		"all", //$NON-NLS-1$
@@ -551,6 +562,7 @@
 		"unlikely-arg-type", //$NON-NLS-1$
 		"unqualified-field-access", //$NON-NLS-1$
 		"unused", //$NON-NLS-1$
+		"preview", //$NON-NLS-1$
 	};
 
 	/**
@@ -760,7 +772,8 @@
 	}
 
 	public static String versionFromJdkLevel(long jdkLevel) {
-		switch ((int)(jdkLevel>>16)) {
+		int major = (int)(jdkLevel>>16);
+		switch (major) {
 			case ClassFileConstants.MAJOR_VERSION_1_1 :
 				if (jdkLevel == ClassFileConstants.JDK1_1)
 					return VERSION_1_1;
@@ -798,32 +811,24 @@
 					return VERSION_9;
 				break;
 			case ClassFileConstants.MAJOR_VERSION_10 :
-				// JDK10 uses same major version ad JDK9
 				if (jdkLevel == ClassFileConstants.JDK10)
 					return VERSION_10;
 				break;
+			default:
+				if(major > ClassFileConstants.MAJOR_VERSION_10) {
+					return "" + (major - ClassFileConstants.MAJOR_VERSION_0); //$NON-NLS-1$
+			}
+			return Util.EMPTY_STRING; // unknown version
 		}
 		return Util.EMPTY_STRING; // unknown version
 	}
 
 	public static long releaseToJDKLevel(String release) {
 		if (release != null && release.length() > 0) {
-			switch(release.charAt(0)) {
-				case '6':
-					return ClassFileConstants.JDK1_6;
-				case '7':
-					return ClassFileConstants.JDK1_7;
-				case '8':
-					return ClassFileConstants.JDK1_8;
-				case '9':
-					return ClassFileConstants.JDK9;
-				case '1':
-					if (release.length() > 1 && release.charAt(1) == '0')
-						return ClassFileConstants.JDK10;
-					else 
-						return 0;
-				default:
-					return 0; // unknown
+			int major = Integer.parseInt(release) + ClassFileConstants.MAJOR_VERSION_0;
+			if (major <= ClassFileConstants.MAJOR_LATEST_VERSION) {
+				long jdkLevel = ((long) major << 16) + ClassFileConstants.MINOR_VERSION_0;
+				return jdkLevel;
 			}
 		}
 		return 0;
@@ -854,14 +859,22 @@
 						return 0; // unknown
 				}
 			} else {
-				switch (version.charAt(0)) {
-					case '9':
-						return ClassFileConstants.JDK9;
-					case '1':
-						if (version.length() > 1 && version.charAt(1) == '0') {
-							return ClassFileConstants.JDK10; // Level for JDK 10
+				try {
+					int index = version.indexOf('.');
+					if (index != -1) {
+						version = version.substring(0, index);
+						} else {
+						index = version.indexOf('-');
+						if (index != -1)
+							version = version.substring(0, index);
+					}
+					int major = Integer.parseInt(version) + ClassFileConstants.MAJOR_VERSION_0;
+					if (major <= ClassFileConstants.MAJOR_LATEST_VERSION) {
+						long jdkLevel = ((long) major << 16) + ClassFileConstants.MINOR_VERSION_0;
+							return jdkLevel;
 						}
-					// No default - let it go through the remaining checks.
+				} catch (NumberFormatException e) {
+					// do nothing and return 0 at the end
 				}
 			}
 		}
@@ -1088,6 +1101,8 @@
 				return "exports"; //$NON-NLS-1$
 			case UnstableAutoModuleName:
 				return "module"; //$NON-NLS-1$
+			//case DummyPreviewFeatureWarning:
+			//	return "preview"; //$NON-NLS-1$
 		}
 		return null;
 	}
@@ -1146,6 +1161,11 @@
 				if ("null".equals(warningToken)) //$NON-NLS-1$
 					return IrritantSet.NULL;
 				break;
+			case 'p' :
+				if ("preview".equals(warningToken)) { //$NON-NLS-1$
+					return IrritantSet.PREVIEW;
+				}
+				break;
 			case 'r' :
 				if ("rawtypes".equals(warningToken)) //$NON-NLS-1$
 					return IrritantSet.RAW;
@@ -1332,6 +1352,7 @@
 		optionsMap.put(OPTION_ReportUnlikelyEqualsArgumentType, getSeverityString(UnlikelyEqualsArgumentType));
 		optionsMap.put(OPTION_ReportAPILeak, getSeverityString(APILeak));
 		optionsMap.put(OPTION_ReportUnstableAutoModuleName, getSeverityString(UnstableAutoModuleName));
+		optionsMap.put(OPTION_EnablePreviews, this.enablePreviewFeatures ? ENABLED : DISABLED);
 		return optionsMap;
 	}
 
@@ -1531,6 +1552,7 @@
 		this.reportMissingEnumCaseDespiteDefault = false;
 
 		this.complainOnUninternedIdentityComparison = false;
+		this.enablePreviewFeatures = false;
 	}
 
 	public void set(Map<String, String> optionsMap) {
@@ -1609,6 +1631,9 @@
 		if ((optionValue = optionsMap.get(OPTION_TargetPlatform)) != null) {
 			long level = versionToJdkLevel(optionValue);
 			if (level != 0) {
+				if (this.enablePreviewFeatures) {
+					level |= ClassFileConstants.MINOR_VERSION_PREVIEW;
+				}
 				this.targetJDK = level;
 			}
 			if (this.targetJDK >= ClassFileConstants.JDK1_5) this.inlineJsrBytecode = true; // forced from 1.5 mode on
@@ -2042,6 +2067,15 @@
 				this.complainOnUninternedIdentityComparison = false;
 			}
 		}
+		if ((optionValue = optionsMap.get(OPTION_EnablePreviews)) != null) {
+			if (ENABLED.equals(optionValue)) {
+				this.enablePreviewFeatures = true;
+				if (this.targetJDK != 0)
+					this.targetJDK |= ClassFileConstants.MINOR_VERSION_PREVIEW;
+			} else if (DISABLED.equals(optionValue)) {
+				this.enablePreviewFeatures = false;
+			}
+		}
 	}
 
 	private String[] stringToNameList(String optionValue) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.java
index d310562..2c34763 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/CompilerStats.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.java
index 60a3819..88e0132 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/Constant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.java
index bb26565..676403d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/DoubleConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.java
index f5b3297..9444cfb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/FloatConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.java
index 4f2fc40..c3d9ad7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ITypeRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.java
index 3d8c32b..d7c366a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IntConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.java
index ed8c8e6..7e5b7b3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/IrritantSet.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -76,6 +79,7 @@
 	public static final IrritantSet MODULE = new IrritantSet(CompilerOptions.UnstableAutoModuleName);
 
 	public static final IrritantSet JAVADOC = new IrritantSet(CompilerOptions.InvalidJavadoc);
+	public static final IrritantSet PREVIEW = new IrritantSet(0);
 	public static final IrritantSet COMPILER_DEFAULT_ERRORS = new IrritantSet(0); // no optional error by default	
 	public static final IrritantSet COMPILER_DEFAULT_WARNINGS = new IrritantSet(0); // see static initializer below
 	public static final IrritantSet COMPILER_DEFAULT_INFOS = new IrritantSet(0); // As of now, no default values
@@ -188,6 +192,7 @@
 
 		UNLIKELY_ARGUMENT_TYPE
 			.set(CompilerOptions.UnlikelyEqualsArgumentType);
+		//PREVIEW.set(CompilerOptions.DummyPreviewFeatureWarning);
 	}
 
 	// Internal state
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.java
index a1ca59a..d81919a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/LongConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.java
index 192c111..b494214 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ReferenceContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.java
index e36fbc0..b8850de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/ShortConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.java
index 2e58359..cf26587 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/impl/StringConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.java
index f08d554..bb62b68 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotatableTypeSystem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -143,7 +146,7 @@
 	public RawTypeBinding getRawType(ReferenceBinding genericType, ReferenceBinding enclosingType, AnnotationBinding [] annotations) {
 		if (genericType.hasTypeAnnotations())
 			throw new IllegalStateException();
-		if (genericType.isStatic() && enclosingType != null) {
+		if (!genericType.hasEnclosingInstanceContext() && enclosingType != null) {
 			enclosingType = (ReferenceBinding) enclosingType.original();
 		}
 		
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.java
index 5a42e52..99e5591 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -76,7 +79,7 @@
 		result[index++] = buildTargetAnnotation(annotationTagBits, env);
 	if ((annotationTagBits & TagBits.AnnotationRetentionMASK) != 0)
 		result[index++] = buildRetentionAnnotation(annotationTagBits, env);
-	if ((annotationTagBits & TagBits.AnnotationDeprecated) != 0)
+	if (!haveDeprecated && (annotationTagBits & TagBits.AnnotationDeprecated) != 0)
 		result[index++] = buildMarkerAnnotation(TypeConstants.JAVA_LANG_DEPRECATED, env.javaBaseModule(), env);
 	if ((annotationTagBits & TagBits.AnnotationDocumented) != 0)
 		result[index++] = buildMarkerAnnotation(TypeConstants.JAVA_LANG_ANNOTATION_DOCUMENTED, env.javaBaseModule(), env);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.java
index 75d7f6b..27aa089 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AnnotationHolder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.java
index 93402d0..9119a40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptBinaryLocalVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.java
index 52a7355..ed4971a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/AptSourceLocalVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.java
index 0e3e05d..a2fd095 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ArrayBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -284,6 +287,13 @@
 		case Binding.INTERSECTION_TYPE :
 		    return ((WildcardBinding) otherType).boundCheck(this);
 
+		case Binding.INTERSECTION_TYPE18:
+			for (ReferenceBinding intersecting : ((IntersectionTypeBinding18) otherType).intersectingTypes) {
+				if (!isCompatibleWith(intersecting, captureScope))
+					return false;
+			}
+			return true;
+
 		case Binding.TYPE_PARAMETER :
 			// check compatibility with capture of ? super X
 			if (otherType.isCapture()) {
@@ -325,6 +335,12 @@
 			break;
 		case Binding.BASE_TYPE :
 			return false;
+		case Binding.INTERSECTION_TYPE18:
+			for (ReferenceBinding intersecting : ((IntersectionTypeBinding18) otherType).intersectingTypes) {
+				if (!isSubtypeOf(intersecting, simulatingBugJDK8026527))
+					return false;
+			}
+			return true;
 	}
 	switch (otherType.leafComponentType().id) {
 	    case TypeIds.T_JavaLangObject :
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.java
index 5444e8b..eff6aa8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.java
index 682801d..35513f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryModuleBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software SE, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -165,7 +168,7 @@
 		int count = 0;
 		for (int i = 0; i < this.unresolvedExports.length; i++) {
 			IPackageExport export = this.unresolvedExports[i];
-			PackageBinding declaredPackage = getVisiblePackage(CharOperation.splitOn('.', export.name()));
+			PackageBinding declaredPackage = forcedGetExportedPackage(CharOperation.splitOn('.', export.name()));
 			if (declaredPackage != null) {
 				this.exportedPackages[count++] = declaredPackage;
 				if (declaredPackage instanceof SplitPackageBinding)
@@ -174,8 +177,6 @@
 					declaredPackage.isExported = Boolean.TRUE;
 					recordExportRestrictions(declaredPackage, export.targets());
 				}
-			} else {
-				// TODO(SHMOD): report incomplete module path?
 			}
 		}
 		if (count < this.exportedPackages.length)
@@ -201,6 +202,23 @@
 			System.arraycopy(this.openedPackages, 0, this.openedPackages = new PackageBinding[count], 0, count);
 	}
 	
+	PackageBinding forcedGetExportedPackage(char[][] compoundName) {
+		// when resolving "exports" in a binary module we simply assume the package must exist,
+		// since this has been checked already when compiling that module.
+		PackageBinding binding = getVisiblePackage(compoundName);
+		if (binding != null)
+			return binding;
+		if (compoundName.length > 1) {
+			PackageBinding parent = forcedGetExportedPackage(CharOperation.subarray(compoundName, 0, compoundName.length-1));
+			binding = new PackageBinding(compoundName, parent, this.environment, this);
+			parent.addPackage(binding, this, true);
+			return binding;
+		}
+		binding = new PackageBinding(compoundName[0], this.environment, this);
+		addPackage(binding, true);
+		return binding;
+	}
+
 	@Override
 	public TypeBinding[] getUses() {
 		if (this.uses == null) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
index 11b7256..ef8dad7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -555,14 +558,12 @@
 					FieldBinding field = this.fields[i];
 					if (!field.isDeprecated()) {
 						field.modifiers |= ExtraCompilerModifiers.AccDeprecatedImplicitly;
-						field.tagBits |= this.tagBits & TagBits.AnnotationTerminallyDeprecated;
 					}
 				}
 				for (int i = 0, max = this.methods.length; i < max; i++) {
 					MethodBinding method = this.methods[i];
 					if (!method.isDeprecated()) {
 						method.modifiers |= ExtraCompilerModifiers.AccDeprecatedImplicitly;
-						method.tagBits |= this.tagBits & TagBits.AnnotationTerminallyDeprecated;
 					}
 				}
 			}
@@ -730,6 +731,22 @@
 //AspectJ Extension
 private static char[] ajcInterMethod = "ajc$interMethod$".toCharArray(); //$NON-NLS-1$
 private static char[] ajcInterField = "ajc$interFieldInit$".toCharArray(); //$NON-NLS-1$
+
+// Override super because scope not set in binary type binding
+@Override
+public boolean isNestmateOf(SourceTypeBinding other) {
+
+//	CompilerOptions options = this.scope.compilerOptions();
+	CompilerOptions options = this.environment.globalOptions;
+	if (options.targetJDK < ClassFileConstants.JDK11 ||
+		options.complianceLevel < ClassFileConstants.JDK11)
+		return false; // default false if level less than 11
+
+	SourceTypeBinding otherHost = other.getNestHost();
+	return TypeBinding.equalsEquals(this, other) ||
+			TypeBinding.equalsEquals(this.nestHost == null ? this : this.nestHost, 
+					otherHost == null ? other : otherHost);
+}
 //End AspectJ Extension
 
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.java
index 9670079..3291efb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Binding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.java
index 5adc888..8a8133b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BlockScope.java
@@ -1,10 +1,13 @@
 //AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -68,6 +71,7 @@
 
 	// annotation support
 	public boolean insideTypeAnnotation = false;
+	public Statement blockStatement;
 
 public BlockScope(BlockScope parent) {
 	this(parent, true);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.java
index 001acdd..a4001d3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/BoundSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.java
index a46c985..4da6d8e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.java
index 925ee13..717b373 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CaptureBinding18.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.java
index 66f7626..6ae8a9d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CatchParameterBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2003, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java
index bd9723c..7d9bf4f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -297,7 +300,7 @@
 			int count = 0;
 			nextMember : for (int i = 0; i < length; i++) {
 				TypeDeclaration memberContext = this.referenceContext.memberTypes[i];
-				if (this.environment().isProcessingAnnotations && this.environment().isMissingType(memberContext.name)) {
+				if (this.environment().root.isProcessingAnnotations && this.environment().isMissingType(memberContext.name)) {
 					throw new SourceTypeCollisionException(); // resolved a type ref before APT generated the type
 				}
 				switch(TypeDeclaration.kind(memberContext.modifiers)) {
@@ -514,7 +517,7 @@
 		ReferenceBinding enclosingType = sourceType.enclosingType();
 		boolean isMemberType = sourceType.isMemberType();
 		if (isMemberType) {
-			if (!sourceType.isStatic())
+			if (sourceType.hasEnclosingInstanceContext())
 				modifiers |= (enclosingType.modifiers & ExtraCompilerModifiers.AccGenericSignature);
 			modifiers |= (enclosingType.modifiers & ClassFileConstants.AccStrictfp);
 			// checks for member types before local types to catch local members
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.java
index 1e07c63..3475f26 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -156,7 +159,7 @@
 	int count = 0;
 	nextType: for (int i = 0; i < typeLength; i++) {
 		TypeDeclaration typeDecl = types[i];
-		if (this.environment.isProcessingAnnotations && this.environment.isMissingType(typeDecl.name))
+		if (this.environment.root.isProcessingAnnotations && this.environment.isMissingType(typeDecl.name))
 			throw new SourceTypeCollisionException(); // resolved a type ref before APT generated the type
 		ReferenceBinding typeBinding = this.fPackage.getType0(typeDecl.name);
 		if (Binding.isValid(typeBinding) && this.fPackage instanceof SplitPackageBinding && !this.environment.module.canAccess(typeBinding.fPackage))
@@ -164,7 +167,7 @@
 		recordSimpleReference(typeDecl.name); // needed to detect collision cases
 		if (Binding.isValid(typeBinding) && !(typeBinding instanceof UnresolvedReferenceBinding)) {
 			// if its an unresolved binding - its fixed up whenever its needed, see UnresolvedReferenceBinding.resolve()
-			if (this.environment.isProcessingAnnotations)
+			if (this.environment.root.isProcessingAnnotations)
 				throw new SourceTypeCollisionException(); // resolved a type ref before APT generated the type
 			// if a type exists, check that its a valid type
 			// it can be a NotFound problem type if its a secondary type referenced before its primary type found in additional units
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.java
index f685d1a..a2e8c18 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExceptionFormula.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2015 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.java
index 79a0d20..8bb7f7f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintExpressionFormula.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.java
index 03f1059..f89476a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintFormula.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2015 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.java
index 81805fb..eb7a779 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ConstraintTypeFormula.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2013, 2016 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2013, 2018 GK Software AG, and others
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -262,9 +265,11 @@
 			case Binding.PARAMETERIZED_TYPE:
 				{
 					List<ConstraintFormula> constraints = new ArrayList<>();
+					boolean isFirst = true;
 					while (superCandidate != null && superCandidate.kind() == Binding.PARAMETERIZED_TYPE && subCandidate != null)  {
 						if (!addConstraintsFromTypeParameters(subCandidate, (ParameterizedTypeBinding) superCandidate, constraints))
-							return FALSE;
+							if (isFirst) return FALSE;				
+						isFirst = false;
 						// travel to enclosing types to check if they have type parameters, too:
 						superCandidate = superCandidate.enclosingType();
 						subCandidate = subCandidate.enclosingType();
@@ -378,9 +383,6 @@
 	}
 
 	boolean addConstraintsFromTypeParameters(TypeBinding subCandidate, ParameterizedTypeBinding ca, List<ConstraintFormula> constraints) {
-		TypeBinding[] ai = ca.arguments;								// C<A1,A2,...>
-		if (ai == null)
-			return true; // no arguments here means nothing to check
 		TypeBinding cb = subCandidate.findSuperTypeOriginatingFrom(ca);	// C<B1,B2,...>
 		if (cb == null)
 			return false; // nothing here means we failed 
@@ -391,6 +393,9 @@
 			return ca.isParameterizedWithOwnVariables();
 		}
 		TypeBinding[] bi = ((ParameterizedTypeBinding) cb).arguments;
+		TypeBinding[] ai = ca.arguments;								// C<A1,A2,...>
+		if (ai == null)
+			return true; // no arguments here means nothing to check
 		if (cb.isRawType() || bi == null || bi.length == 0)
 			return (this.isSoft && InferenceContext18.SIMULATE_BUG_JDK_8026527) ? true : false; // FALSE would conform to the spec 
 		for (int i = 0; i < ai.length; i++)
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.java
index c0cbe1c..c758de3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ElementValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.java
index d462671..6bb15dd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExternalAnnotationSuperimposer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExtraCompilerModifiers.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExtraCompilerModifiers.java
index c2dda36..8264496 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExtraCompilerModifiers.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ExtraCompilerModifiers.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.java
index 4db92c8..1b7f471 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/FieldBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.java
index b818b68..b078990 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IQualifiedTypeResolutionListener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.java
index 13ec326..f99f467 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImplicitNullAnnotationVerifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2018 GK Software AG, IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.java
index 3f747f9..3d5ccd9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.java
index 05158de..08ba569 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ImportConflictBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.java
index c6b5205..ce3abc9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.java
index a70abc0..e5467f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceContext18.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -1137,7 +1140,7 @@
 										} else {
 											ReferenceBinding[] glbs = Scope.greaterLowerBound((ReferenceBinding[])upperBounds);
 											if (glbs == null) {
-												throw new UnsupportedOperationException("no glb for "+Arrays.asList(upperBounds)); //$NON-NLS-1$
+												return null;
 											} else if (glbs.length == 1) {
 												glb = glbs[0];
 											} else {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.java
index 8f3a37c..84e8b13 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceFailureException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.java
index ddf391e..41c4866 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceSubstitution.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.java
index 5fc180f..62bd7fa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InferenceVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2015 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.java
index f3cc08d..94a3bd2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InnerEmulationDependency.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.java
index 7bef16d..ccf295d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/IntersectionTypeBinding18.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -26,7 +29,15 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Wildcard;
 import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
 
-public class IntersectionTypeBinding18 extends ReferenceBinding { // abstraction used for intersection casts in Java 8 + type inference at 1.8+
+/**
+ * Abstraction used for intersection casts in Java 8 + and inferred types:
+ * <ul>
+ * <li>type inference at 1.8+</li>
+ * <li>lub at 1.8+</li>
+ * <li>projections for 'var' at 10+</li>
+ * </ul>
+ */
+public class IntersectionTypeBinding18 extends ReferenceBinding {
 
 	public ReferenceBinding [] intersectingTypes;
 	private ReferenceBinding javaLangObject;
@@ -118,6 +129,11 @@
 	
 	@Override
 	public char[] constantPoolName() {
+		TypeBinding erasure = erasure();
+		if (erasure != this) //$IDENTITY-COMPARISON$
+			return erasure.constantPoolName();
+		if (this.intersectingTypes[0].id == TypeIds.T_JavaLangObject && this.intersectingTypes.length > 1)
+			return this.intersectingTypes[1].constantPoolName(); // improve stack map
 		return this.intersectingTypes[0].constantPoolName();
 	}
 
@@ -209,6 +225,24 @@
 	}
 
 	@Override
+	public TypeBinding erasure() {
+		int classIdx = -1;
+		for (int i = 0; i < this.intersectingTypes.length; i++) {
+			if (this.intersectingTypes[i].isClass() && this.intersectingTypes[i].id != TypeIds.T_JavaLangObject) { // ignore j.l.Object to improve stack map
+				if (classIdx == -1) {
+					classIdx = i;
+				} else {
+					classIdx = Integer.MAX_VALUE;
+					break;
+				}
+			}
+		}
+		if (classIdx > -1 && classIdx < Integer.MAX_VALUE)
+			return this.intersectingTypes[classIdx];
+		return this;
+	}
+
+	@Override
 	public char[] qualifiedSourceName() {
 		StringBuffer qualifiedSourceName = new StringBuffer(16);
 		for (int i = 0; i < this.length; i++) {		
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.java
index 376cb50..e41b569 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/InvocationSite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.java
index cd0d99e..d398332 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -18,6 +21,7 @@
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.CaseStatement;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.LambdaExpression;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeReference;
 
@@ -47,6 +51,10 @@
 	if (methodBinding != null) {
 		this.enclosingMethod = methodBinding;
 	}
+	MethodScope lambdaScope = scope.enclosingLambdaScope();
+	if (lambdaScope != null) {
+		((LambdaExpression) lambdaScope.referenceContext).addLocalType(this);
+	}
 }
 
 public LocalTypeBinding(LocalTypeBinding prototype) {
@@ -253,6 +261,16 @@
 	this.constantPoolName = computedConstantPoolName;
 }
 
+public void transferConstantPoolNameTo(TypeBinding substType) {
+	if (this.constantPoolName != null && substType instanceof LocalTypeBinding) {
+		LocalTypeBinding substLocalType = (LocalTypeBinding) substType;
+		if (substLocalType.constantPoolName == null) {
+			substLocalType.setConstantPoolName(this.constantPoolName);
+			this.scope.compilationUnitScope().constantPoolNameUsage.put(substLocalType.constantPoolName, substLocalType);
+		}
+	}
+}
+
 /*
  * Overriden for code assist. In this case, the constantPoolName() has not been computed yet.
  * Slam the source name so that the signature is syntactically correct.
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.java
index e8488d1..8586bdd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -20,6 +23,9 @@
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.compiler.lookup;
 
+import java.util.HashSet;
+import java.util.Set;
+
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
@@ -49,6 +55,8 @@
 
 	public FakedTrackingVariable closeTracker; // track closing of instances of type AutoCloseable, maybe null
 
+	public Set<MethodScope> uninitializedInMethod;
+
 	// for synthetic local variables
 	// if declaration slot is not positionned, the variable will not be listed in attribute
 	// note that the name of a variable should be chosen so as not to conflict with user ones (usually starting with a space char is all needed)
@@ -324,5 +332,16 @@
 	public void markReferenced() {
 		// Signal that the name is used - This is for extension in subclasses
 	}
-	
+
+	public boolean isUninitializedIn(Scope scope) {
+		if (this.uninitializedInMethod != null)
+			return this.uninitializedInMethod.contains(scope.methodScope());
+		return false;
+	}
+
+	public void markAsUninitializedIn(Scope scope) {
+		if (this.uninitializedInMethod == null)
+			this.uninitializedInMethod = new HashSet<>();
+		this.uninitializedInMethod.add(scope.methodScope());
+	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
index b050177..eb83e28 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -431,10 +434,10 @@
 		} else { 
 			moduleBinding = this.knownModules.get(moduleName);
 			if (moduleBinding == null && this.nameEnvironment instanceof IModuleAwareNameEnvironment) {
-				assert answer.isBinaryType();
 				IModule iModule = ((IModuleAwareNameEnvironment) this.nameEnvironment).getModule(moduleName);
 				try {
-					moduleBinding = BinaryModuleBinding.create(iModule, this);
+					this.typeRequestor.accept(iModule, this);
+					moduleBinding = this.knownModules.get(moduleName);
 				} catch (NullPointerException e) {
 					System.err.println("Bug 529367: moduleName: " + new String(moduleName) + "iModule null" +  //$NON-NLS-1$ //$NON-NLS-2$
 							(iModule == null ? "true" : "false")); //$NON-NLS-1$ //$NON-NLS-2$]
@@ -693,6 +696,7 @@
 		case Binding.WILDCARD_TYPE :
 		case Binding.INTERSECTION_TYPE :
 		case Binding.TYPE_PARAMETER :
+		case Binding.INTERSECTION_TYPE18:
 			switch (type.erasure().id) {
 				case TypeIds.T_JavaLangBoolean :
 					return TypeBinding.BOOLEAN;
@@ -714,8 +718,6 @@
 			break;
 		case Binding.POLY_TYPE:
 			return ((PolyTypeBinding) type).computeBoxingType();
-		case Binding.INTERSECTION_TYPE18:
-			return computeBoxingType(type.getIntersectingTypes()[0]);
 	}
 	return type;
 }
@@ -785,9 +787,19 @@
 		}
 	}
 	if (packageBinding instanceof SplitPackageBinding) {
-		PackageBinding incarnation = ((SplitPackageBinding) packageBinding).getIncarnation(this.module);
-		if (incarnation != null)
-			packageBinding = incarnation;
+		PackageBinding candidate = null;
+		// select from incarnations the unique package containing CUs, if any:
+		for (PackageBinding incarnation : ((SplitPackageBinding) packageBinding).incarnations) {
+			if (incarnation.hasCompilationUnit(false)) {
+				if (candidate != null) {
+					candidate = null;
+					break; // likely to report "accessible from more than one module" downstream 
+				}
+				candidate = incarnation;
+			}
+		}
+		if (candidate != null)
+			return candidate;
 	}
 	return packageBinding;
 }
@@ -799,12 +811,12 @@
 public ReferenceBinding convertToParameterizedType(ReferenceBinding originalType) {
 	if (originalType != null) {
 		boolean isGeneric = originalType.isGenericType();
-		if (!isGeneric && originalType.isStatic())
+		if (!isGeneric && !originalType.hasEnclosingInstanceContext())
 			return originalType;
 		ReferenceBinding originalEnclosingType = originalType.enclosingType();
 		ReferenceBinding convertedEnclosingType = originalEnclosingType;
 		boolean needToConvert = isGeneric;
-		if (originalEnclosingType != null && hasInstanceContext(originalType)) {
+		if (originalEnclosingType != null && originalType.hasEnclosingInstanceContext()) {
 			convertedEnclosingType = convertToParameterizedType(originalEnclosingType);
 			needToConvert |= TypeBinding.notEquals(originalEnclosingType, convertedEnclosingType);
 		}
@@ -814,15 +826,6 @@
 	}
 	return originalType;
 }
-private boolean hasInstanceContext(ReferenceBinding type) {
-	if (type.isMemberType() && !type.isStatic())
-		return true;
-	MethodBinding enclosingMethod = type.enclosingMethod();
-	if (enclosingMethod != null)
-		return !enclosingMethod.isStatic();
-	return false;
-}
-
 /**
  * Returns the given binding's raw type binding.
  * @param type the TypeBinding to raw convert
@@ -871,7 +874,7 @@
 		convertedType = needToConvert ? createRawType((ReferenceBinding)originalType.erasure(), null) : originalType;
 	} else {
 		ReferenceBinding convertedEnclosing;
-		if(((ReferenceBinding)originalType).isStatic()) {
+		if (!((ReferenceBinding)originalType).hasEnclosingInstanceContext()) {
 			convertedEnclosing = (ReferenceBinding) originalEnclosing.original();
 		} else {
 			if (originalEnclosing.kind() == Binding.RAW_TYPE) {			
@@ -1226,7 +1229,7 @@
 	cachedInfo[index] = parameterizedGenericMethod;
 	return parameterizedGenericMethod;
 }
-public PolymorphicMethodBinding createPolymorphicMethod(MethodBinding originalPolymorphicMethod, TypeBinding[] parameters) {
+public PolymorphicMethodBinding createPolymorphicMethod(MethodBinding originalPolymorphicMethod, TypeBinding[] parameters, Scope scope) {
 	// cached info is array of already created polymorphic methods for this type
 	String key = new String(originalPolymorphicMethod.selector);
 	PolymorphicMethodBinding[] cachedInfo = (PolymorphicMethodBinding[]) this.uniquePolymorphicMethodBindings.get(key);
@@ -1237,7 +1240,17 @@
 		if (parameterTypeBinding.id == TypeIds.T_null) {
 			parametersTypeBinding[i] = getType(JAVA_LANG_VOID, javaBaseModule());
 		} else {
-			parametersTypeBinding[i] = parameterTypeBinding.erasure();
+			if (parameterTypeBinding.isPolyType()) {
+				PolyTypeBinding ptb = (PolyTypeBinding) parameterTypeBinding;
+				if (scope instanceof BlockScope && ptb.expression.resolvedType == null) {
+					ptb.expression.setExpectedType(scope.getJavaLangObject());
+					parametersTypeBinding[i] = ptb.expression.resolveType((BlockScope) scope);
+				} else {
+					parametersTypeBinding[i] = ptb.expression.resolvedType;
+				}
+			} else {
+				parametersTypeBinding[i] = parameterTypeBinding.erasure();
+			}
 		}
 	}
 	boolean needToGrow = false;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.java
index 9b42cbd..d66f8f3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MemberTypeBinding.java
@@ -1,10 +1,13 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
  *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.java
index 001842c..687f352 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java
index cf2a5fb..855b7ae 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  *  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java
index 69435a9..c1ef81b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java
index 7209f33..358ba58 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -787,7 +790,7 @@
 					} else if (match.declaringClass.isClass()) {
 						implementation = match;
 					}
-					if (interfaceMethod != null && implementation != null && !isAsVisible(implementation, interfaceMethod))
+					if (interfaceMethod != null && implementation != null && !implementation.isAbstract() && !isAsVisible(implementation, interfaceMethod))
 						problemReporter().inheritedMethodReducesVisibility(typeParameter, implementation, new MethodBinding [] {interfaceMethod});
 					
 					if (areReturnTypesCompatible(first, match)) continue;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.java
index 5b4273b..c3e92f8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MissingTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.java
index 6b26164..6ed8917 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ModuleBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.java
index 6426ef4..6fa4dcd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/MostSpecificExceptionMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.java
index d834a91..3dd3eec 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NestedTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.java
index e2ee52c..3f690a3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/NullTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.java
index b62e3a3..7e48479 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -186,7 +189,7 @@
 * package with the same name.
 */
 
-public ReferenceBinding getType(char[] name, ModuleBinding mod) {
+ReferenceBinding getType(char[] name, ModuleBinding mod) {
 	ReferenceBinding referenceBinding = getType0(name);
 	if (referenceBinding == null) {
 		if ((referenceBinding = this.environment.askForType(this, name, mod)) == null) {
@@ -409,9 +412,13 @@
  */
 public boolean isExported() {
 	if (this.isExported == null) {
-		this.enclosingModule.getExports(); // ensure resolved and completed
-		if (this.isExported == null)
-			this.isExported = Boolean.FALSE;
+		if (this.enclosingModule.isAuto) {
+			this.isExported = Boolean.TRUE;
+		} else {
+			this.enclosingModule.getExports(); // ensure resolved and completed
+			if (this.isExported == null)
+				this.isExported = Boolean.FALSE;
+		}
 	}
 	return this.isExported == Boolean.TRUE;
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.java
index 5abeaec..7c54da2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterNonNullDefaultProvider.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2018 Till Brychcy and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Till Brychcy - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.java
index fa27404..3b15743 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedFieldBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.java
index 1cb5db5..ab54c02 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedGenericMethodBinding.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.java
index 675f2c5..5b77193 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.java
@@ -1,11 +1,14 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
  *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *     Stephan Herrmann - Contributions for
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
index 463c46f..fc293aa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2005, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -79,7 +82,7 @@
 	public ParameterizedTypeBinding(ReferenceBinding type, TypeBinding[] arguments,  ReferenceBinding enclosingType, LookupEnvironment environment){
 		this.environment = environment;
 		this.enclosingType = enclosingType; // never unresolved, never lazy per construction
-		if (type.isStatic() && arguments == null && !(this instanceof RawTypeBinding))
+		if (!type.hasEnclosingInstanceContext() && arguments == null && !(this instanceof RawTypeBinding))
 			throw new IllegalStateException();
 		initialize(type, arguments);
 		if (type instanceof UnresolvedReferenceBinding)
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.java
index dbed7c7..4f2c455 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyParameterizedGenericMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************

  * Copyright (c) 2014, 2015 IBM Corporation and others.

- * All rights reserved. This program and the accompanying materials

- * are made available under the terms of the Eclipse Public License v1.0

+ *
+ * This program and the accompanying materials

+ * are made available under the terms of the Eclipse Public License 2.0

  * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/epl-v10.html

+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0

  *

  * Contributors:

  *     IBM Corporation - initial API and implementation

diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.java
index 3c7cf4e..599d09c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolyTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.java
index b2a34d7..386285d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/PolymorphicMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.java
index d31df9f..7ee74c3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.java
index c507b9c..62c76bb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemFieldBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.java
index 2bdc5ac..fa6210b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -38,7 +41,7 @@
 	if (closestMatch != null && problemReason != ProblemReasons.Ambiguous) {
 		this.declaringClass = closestMatch.declaringClass;
 		this.returnType = closestMatch.returnType;
-		if (problemReason == ProblemReasons.InvocationTypeInferenceFailure) {
+		if (problemReason == ProblemReasons.InvocationTypeInferenceFailure || problemReason == ProblemReasons.ContradictoryNullAnnotations) {
 			this.thrownExceptions = closestMatch.thrownExceptions;
 			this.typeVariables = closestMatch.typeVariables;
 			this.modifiers = closestMatch.modifiers;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.java
index 75c79b6..e9e2e07 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemPackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReasons.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReasons.java
index 4ef19e8..66b0835 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReasons.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReasons.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.java
index f2d7192..83a88ec 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ProblemReferenceBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
index 79ef4d1..1ba99d6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -57,7 +60,7 @@
 				}
 			}
 		}
-		if (enclosingType == null || this.isStatic() || (enclosingType.modifiers & ExtraCompilerModifiers.AccGenericSignature) == 0) {
+		if (enclosingType == null || !this.hasEnclosingInstanceContext() || (enclosingType.modifiers & ExtraCompilerModifiers.AccGenericSignature) == 0) {
 			this.modifiers &= ~ExtraCompilerModifiers.AccGenericSignature; // only need signature if enclosing needs one
 		}
 	}
@@ -66,7 +69,7 @@
 	public char[] computeUniqueKey(boolean isLeaf) {
 	    StringBuffer sig = new StringBuffer(10);
 		if (isMemberType() && (enclosingType().isParameterizedType() || enclosingType().isRawType())) {
-			if (isStatic()) {
+			if (!hasEnclosingInstanceContext()) {
 			    char[] typeSig = enclosingType().signature(); // don't consider generics from enclosing of static member
 			    sig.append(typeSig, 0, typeSig.length-1); // copy all but trailing semicolon
 			    sig.append('$'); // for consistency with keys prior to https://bugs.eclipse.org/460491
@@ -153,7 +156,7 @@
 		    	this.genericTypeSignature = genericType().signature();
 			} else {
 			    StringBuffer sig = new StringBuffer(10);
-			    if (isMemberType() && !isStatic()) {
+			    if (isMemberType() && hasEnclosingInstanceContext()) {
 			    	ReferenceBinding enclosing = enclosingType();
 					char[] typeSig = enclosing.genericTypeSignature();
 					sig.append(typeSig, 0, typeSig.length-1);// copy all but trailing semicolon
@@ -289,7 +292,7 @@
 	public char[] readableName(boolean showGenerics) /*java.lang.Object,  p.X<T> */ {
 	    char[] readableName;
 		if (isMemberType()) {
-			readableName = CharOperation.concat(enclosingType().readableName(showGenerics && !isStatic()), this.sourceName, '.');
+			readableName = CharOperation.concat(enclosingType().readableName(showGenerics && hasEnclosingInstanceContext()), this.sourceName, '.');
 		} else {
 			readableName = CharOperation.concatWith(actualType().compoundName, '.');
 		}
@@ -303,7 +306,7 @@
 	public char[] shortReadableName(boolean showGenerics) /*Object*/ {
 	    char[] shortReadableName;
 		if (isMemberType()) {
-			shortReadableName = CharOperation.concat(enclosingType().shortReadableName(showGenerics && !isStatic()), this.sourceName, '.');
+			shortReadableName = CharOperation.concat(enclosingType().shortReadableName(showGenerics && hasEnclosingInstanceContext()), this.sourceName, '.');
 		} else {
 			shortReadableName = actualType().sourceName;
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.java
index 53866bf..8563e13 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReductionResult.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.java
index 7dbe889..db724a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/ReferenceBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -445,7 +448,7 @@
 
 public char[] computeGenericTypeSignature(TypeVariableBinding[] typeVariables) {
 
-	boolean isMemberOfGeneric = isMemberType() && !isStatic() && (enclosingType().modifiers & ExtraCompilerModifiers.AccGenericSignature) != 0;
+	boolean isMemberOfGeneric = isMemberType() && hasEnclosingInstanceContext() && (enclosingType().modifiers & ExtraCompilerModifiers.AccGenericSignature) != 0;
 	if (typeVariables == Binding.NO_TYPE_VARIABLES && !isMemberOfGeneric) {
 		return signature();
 	}
@@ -1328,6 +1331,23 @@
 	return (this.modifiers & (ClassFileConstants.AccInterface | ClassFileConstants.AccAnnotation | ClassFileConstants.AccEnum)) == 0;
 }
 
+private static SourceTypeBinding getSourceTypeBinding(ReferenceBinding ref) {
+	if (ref instanceof SourceTypeBinding)
+		return (SourceTypeBinding) ref;
+	if (ref instanceof ParameterizedTypeBinding) {
+		ParameterizedTypeBinding ptb = (ParameterizedTypeBinding) ref;
+		return ptb.type instanceof SourceTypeBinding ? (SourceTypeBinding) ptb.type : null;
+	}
+	return null;
+}
+public  boolean isNestmateOf(ReferenceBinding other) {
+	SourceTypeBinding s1 = getSourceTypeBinding(this);
+	SourceTypeBinding s2 = getSourceTypeBinding(other);
+	if (s1 == null || s2 == null) return false;
+
+	return s1.isNestmateOf(s2);
+}
+
 @Override
 public boolean isProperType(boolean admitCapture18) {
 	ReferenceBinding outer = enclosingType();
@@ -1750,7 +1770,7 @@
 public char[] readableName(boolean showGenerics) /*java.lang.Object,  p.X<T> */ {
     char[] readableName;
 	if (isMemberType()) {
-		readableName = CharOperation.concat(enclosingType().readableName(showGenerics && !isStatic()), this.sourceName, '.');
+		readableName = CharOperation.concat(enclosingType().readableName(showGenerics && hasEnclosingInstanceContext()), this.sourceName, '.');
 	} else {
 		readableName = CharOperation.concatWith(this.compoundName, '.');
 	}
@@ -1901,7 +1921,7 @@
 public char[] shortReadableName(boolean showGenerics) /*Object*/ {
 	char[] shortReadableName;
 	if (isMemberType()) {
-		shortReadableName = CharOperation.concat(enclosingType().shortReadableName(showGenerics && !isStatic()), this.sourceName, '.');
+		shortReadableName = CharOperation.concat(enclosingType().shortReadableName(showGenerics && hasEnclosingInstanceContext()), this.sourceName, '.');
 	} else {
 		shortReadableName = this.sourceName;
 	}
@@ -2338,4 +2358,13 @@
 		return this.fPackage.enclosingModule;
 	return null;
 }
+
+public boolean hasEnclosingInstanceContext() {
+	if (isMemberType() && !isStatic())
+		return true;
+	MethodBinding enclosingMethod = enclosingMethod();
+	if (enclosingMethod != null)
+		return !enclosingMethod.isStatic();
+	return false;
+}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.java
index b337099..31e7d2e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Scope.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -60,6 +63,7 @@
 package org.aspectj.org.eclipse.jdt.internal.compiler.lookup;
 
 import java.util.*;
+import java.util.function.Function;
 
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.*;
@@ -349,6 +353,7 @@
 	// 5.1.10
 	public static ReferenceBinding[] greaterLowerBound(ReferenceBinding[] types) {
 		if (types == null) return null;
+		types = filterValidTypes(types, ReferenceBinding[]::new);
 		int length = types.length;
 		if (length == 0) return null;
 		ReferenceBinding[] result = types;
@@ -387,6 +392,7 @@
 	// 5.1.10
 	public static TypeBinding[] greaterLowerBound(TypeBinding[] types, /*@Nullable*/ Scope scope, LookupEnvironment environment) {
 		if (types == null) return null;
+		types = filterValidTypes(types, TypeBinding[]::new);
 		int length = types.length;
 		if (length == 0) return null;
 		TypeBinding[] result = types;
@@ -461,6 +467,20 @@
 		return trimmedResult;
 	}
 
+	static <T extends TypeBinding> T[] filterValidTypes(T[] allTypes, Function<Integer,T[]> ctor) {
+		T[] valid = ctor.apply(allTypes.length);
+		int count = 0;
+		for (int i = 0; i < allTypes.length; i++) {
+			if (allTypes[i].isValidBinding())
+				valid[count++] = allTypes[i];
+		}
+		if (count == allTypes.length)
+			return allTypes;
+		if (count == 0 && allTypes.length > 0)
+			return Arrays.copyOf(allTypes, 1); // if all are invalid pick the first as a placeholder to prevent general glb failure
+		return Arrays.copyOf(valid, count);
+	}
+
 	static boolean isMalformedPair(TypeBinding t1, TypeBinding t2, Scope scope) {
 		// not spec-ed in JLS, but per email communication (2017-09-13) it should be
 		switch (t1.kind()) {
@@ -559,7 +579,7 @@
 					ParameterizedTypeBinding originalParameterizedType = (ParameterizedTypeBinding) originalType;
 					ReferenceBinding originalEnclosing = originalType.enclosingType();
 					ReferenceBinding substitutedEnclosing = originalEnclosing;
-					if (originalEnclosing != null && !originalType.isStatic()) {
+					if (originalEnclosing != null && originalParameterizedType.hasEnclosingInstanceContext()) {
 						substitutedEnclosing = (ReferenceBinding) substitute(substitution, originalEnclosing);
 						if (isMemberTypeOfRaw(originalType, substitutedEnclosing))
 							return originalParameterizedType.environment.createRawType(
@@ -640,7 +660,7 @@
 					}
 	
 				    // treat as if parameterized with its type variables (non generic type gets 'null' arguments)
-					if (substitutedEnclosing != originalEnclosing && !originalType.isStatic()) { //$IDENTITY-COMPARISON$
+					if (substitutedEnclosing != originalEnclosing && originalReferenceType.hasEnclosingInstanceContext()) { //$IDENTITY-COMPARISON$
 						return substitution.isRawSubstitution()
 							? substitution.environment().createRawType(originalReferenceType, substitutedEnclosing, originalType.getTypeAnnotations())
 							:  substitution.environment().createParameterizedType(originalReferenceType, null, substitutedEnclosing, originalType.getTypeAnnotations());
@@ -753,6 +773,10 @@
 		return false;
 	}
 
+	public boolean isModuleScope() {
+		return false;
+	}
+
 	/**
 	 * Finds the most specific compiler options
 	 */
@@ -844,7 +868,7 @@
 		if ((parameterCompatibilityLevel(method, arguments, tiebreakingVarargsMethods)) > NOT_COMPATIBLE) {
 			if ((method.tagBits & TagBits.AnnotationPolymorphicSignature) != 0) {
 				// generate polymorphic method
-				return this.environment().createPolymorphicMethod(method, arguments);
+				return this.environment().createPolymorphicMethod(method, arguments, this);
 			}
 			return method;
 		}
@@ -1115,6 +1139,15 @@
 		return null; // may answer null if no type around
 	}
 
+	public final ClassScope enclosingTopMostClassScope() {
+		Scope scope = this;
+		while (scope != null) {
+			Scope t = scope.parent;
+			if (t instanceof CompilationUnitScope) break;
+			scope = t;
+		}
+		return scope instanceof ClassScope ? ((ClassScope) scope) : null;
+	}
 	public final MethodScope enclosingMethodScope() {
 		Scope scope = this;
 		while ((scope = scope.parent) != null) {
@@ -1343,7 +1376,7 @@
 					exactMethod = computeCompatibleMethod(exactMethod, argumentTypes, invocationSite);
 				} else if ((exactMethod.tagBits & TagBits.AnnotationPolymorphicSignature) != 0) {
 					// generate polymorphic method
-					return this.environment().createPolymorphicMethod(exactMethod, argumentTypes);
+					return this.environment().createPolymorphicMethod(exactMethod, argumentTypes, this);
 				}
 				return exactMethod;
 			}
@@ -2194,7 +2227,7 @@
 										if (TypeBinding.equalsEquals(receiverType, fieldBinding.declaringClass) || compilerOptions().complianceLevel >= ClassFileConstants.JDK1_4) {
 											// found a valid field in the 'immediate' scope (i.e. not inherited)
 											// OR in 1.4 mode (inherited shadows enclosing)
-											if (foundField == null) {
+											if (foundField == null || foundField.problemId() == ProblemReasons.NotVisible) {
 												if (depth > 0){
 													invocationSite.setDepth(depth);
 													invocationSite.setActualReceiverType(receiverType);
@@ -4095,7 +4128,18 @@
 				otherBounds[rank++] = mec;
 			}
 		}
-		TypeBinding intersectionType = environment().createWildcard(null, 0, firstBound, otherBounds, Wildcard.EXTENDS);  // pass common null annotations by synthesized annotation bindings.
+		TypeBinding intersectionType;
+		if (environment().globalOptions.complianceLevel < ClassFileConstants.JDK1_8) {
+			intersectionType = environment().createWildcard(null, 0, firstBound, otherBounds, Wildcard.EXTENDS);
+		} else {
+			// It _should_ be safe to assume only ReferenceBindings at this point, because
+			// - base types are rejected in minimalErasedCandidates
+			// - arrays are peeled, different dims are rejected above ("not all types have same dimension")
+			ReferenceBinding[] intersectingTypes = new ReferenceBinding[otherBounds.length+1];
+			intersectingTypes[0] = (ReferenceBinding) firstBound;
+			System.arraycopy(otherBounds, 0, intersectingTypes, 1, otherBounds.length);
+			intersectionType = environment().createIntersectionType18(intersectingTypes);
+		}
 		return commonDim == 0 ? intersectionType : environment().createArrayType(intersectionType, commonDim);
 	}
 
@@ -5237,7 +5281,7 @@
 	}
 
 	public boolean validateNullAnnotation(long tagBits, TypeReference typeRef, Annotation[] annotations) {
-		if (typeRef == null)
+		if (typeRef == null || typeRef.resolvedType == null)
 			return true;
 		TypeBinding type = typeRef.resolvedType;
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.java
index f4f443f..ff1425a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SignatureWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.java
index 27c7416..225d537 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceModuleBinding.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -45,8 +48,6 @@
 	public void setRequires(ModuleBinding[] requires, ModuleBinding[] requiresTransitive) {
 		// TODO(SHMOD): it's a bit awkward that we may get called after applyModuleUpdates() has already worked.
 		ModuleBinding javaBase = this.environment.javaBaseModule();
-		if (javaBase.isUnnamed()) // happens when no java.base can be found in the name environment.
-			javaBase = null;
 		this.requires = merge(this.requires, requires, javaBase, ModuleBinding[]::new);
 		this.requiresTransitive = merge(this.requiresTransitive, requiresTransitive, null, ModuleBinding[]::new);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java
index 6a3edb0..fa7af2b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -53,7 +56,10 @@
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.Iterator;
+import java.util.List;
+import java.util.stream.Collectors;
 
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.IErrorHandlingPolicy;
@@ -134,7 +140,11 @@
   // End AspectJ Extension
 	
 	public ExternalAnnotationProvider externalAnnotationProvider;

-	

+	
+	// AspectJ private to protected

+	protected SourceTypeBinding nestHost;
+	public HashSet<SourceTypeBinding> nestMembers;
+	
 public SourceTypeBinding(char[][] compoundName, PackageBinding fPackage, ClassScope scope) {
 	this.compoundName = compoundName;
 	this.fPackage = fPackage;
@@ -2724,6 +2734,42 @@
 	return this.module;
 }
 
+public SourceTypeBinding getNestHost() {
+	return this.nestHost;
+}
+
+public void setNestHost(SourceTypeBinding nestHost) {
+	this.nestHost = nestHost;
+}
+
+public boolean isNestmateOf(SourceTypeBinding other) {
+
+	CompilerOptions options = this.scope.compilerOptions();
+	if (options.targetJDK < ClassFileConstants.JDK11 ||
+		options.complianceLevel < ClassFileConstants.JDK11)
+		return false; // default false if level less than 11
+
+	SourceTypeBinding otherHost = other.getNestHost();
+	return TypeBinding.equalsEquals(this, other) ||
+			TypeBinding.equalsEquals(this.nestHost == null ? this : this.nestHost, 
+					otherHost == null ? other : otherHost);
+}
+public void addNestMember(SourceTypeBinding member) {
+	if (this.nestMembers == null) {
+		this.nestMembers = new HashSet<>();
+	}
+	this.nestMembers.add(member);
+}
+public List<String> getNestMembers() {
+	if (this.nestMembers == null)
+		return null;
+	List<String> list = this.nestMembers
+							.stream()
+							.map(s -> new String(s.constantPoolName()))
+							.sorted()
+							.collect(Collectors.toList());
+	return list;
+}
 //AspectJ Extension
 public void addField(FieldBinding binding) {
    if (fields == null) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.java
index 7a3876f..7f319ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SourceTypeCollisionException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.java
index 5f9f815..14aaa20 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SplitPackageBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2017, 2018 GK Software SE, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2017 GK Software SE, and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -239,7 +242,7 @@
 	}
 
 	@Override
-	public ReferenceBinding getType(char[] name, ModuleBinding mod) {
+	ReferenceBinding getType(char[] name, ModuleBinding mod) {
 		ReferenceBinding candidate = null;
 		boolean accessible = false;
 		for (PackageBinding incarnation : this.incarnations) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.java
index aa003d0..58019b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/Substitution.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -16,6 +19,30 @@
 public interface Substitution {
 
 	/**
+	 * Don't substitute any type variables.
+	 * Enables the use of {@link Scope.Substitutor} for other purposes.
+	 */
+	public static class NullSubstitution implements Substitution {
+		LookupEnvironment environment;
+
+		public NullSubstitution(LookupEnvironment environment) {
+			this.environment = environment;
+		}
+		@Override
+		public TypeBinding substitute(TypeVariableBinding typeVariable) {
+			return typeVariable;
+		}
+		@Override
+		public boolean isRawSubstitution() {
+			return false;
+		}
+		@Override
+		public LookupEnvironment environment() {
+			return this.environment;
+		}
+	}
+
+	/**
 	 * Returns the type substitute for a given type variable, or itself
 	 * if no substitution got performed.
 	 */
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.java
index 3d2351b..d010510 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticArgumentBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.java
index 6005cff..677537c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFactoryMethodBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2017 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.java
index 5ec057f..eb5ed18 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticFieldBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.java
index 61abddf..a70a711 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/SyntheticMethodBinding.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *		IBM Corporation - initial API and implementation
@@ -17,6 +20,8 @@
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.compiler.lookup;
 
+import java.util.stream.Stream;
+
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.FieldDeclaration;
@@ -384,6 +389,9 @@
 		this.tagBits |= (TagBits.AnnotationResolved | TagBits.DeprecatedAnnotationResolved) | (lambda.binding.tagBits & TagBits.HasParameterAnnotations);
 	    this.returnType = lambda.binding.returnType;
 	    this.parameters = lambda.binding.parameters;
+	    TypeVariableBinding[] vars = Stream.of(this.parameters).filter(param -> param.isTypeVariable()).toArray(TypeVariableBinding[]::new);
+	    if (vars != null && vars.length > 0)
+	    	this.typeVariables = vars;
 	    this.thrownExceptions = lambda.binding.thrownExceptions;
 	    this.purpose = SyntheticMethodBinding.LambdaMethod;
 		SyntheticMethodBinding[] knownAccessMethods = declaringClass.syntheticMethods();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.java
index 058ea06..077cfae 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TagBits.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -39,9 +42,6 @@
 	long HasUncheckedTypeArgumentForBoundCheck = ASTNode.Bit9;
 	
 	// local variable
-	long NotInitialized = ASTNode.Bit9;
-	
-	// local variable
 	long ForcedToBeRawType = ASTNode.Bit10;
 
 	// set when method has argument(s) that couldn't be resolved
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
index e16403f..c35acd5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -540,6 +543,20 @@
 				}
 			}
 			return this; // only occur if passed null declaringClass for arraylength
+		case Binding.INTERSECTION_TYPE18:
+			ReferenceBinding[] intersectingTypes = ((IntersectionTypeBinding18) this).getIntersectingTypes();
+			ReferenceBinding constantPoolType = intersectingTypes[0];
+			if (constantPoolType.id == TypeIds.T_JavaLangObject && intersectingTypes.length > 1)
+				constantPoolType = intersectingTypes[1];
+			if (constantPoolType.erasure().findSuperTypeOriginatingFrom(declaringClass) != null) {
+				return this; // no need for alternate receiver type
+			}
+			for (ReferenceBinding superBinding : intersectingTypes) {
+				if (superBinding.findSuperTypeOriginatingFrom(declaringClass) != null) {
+					return superBinding.getErasureCompatibleType(declaringClass);
+				}
+			}
+			return this; // should only occur if passed null declaringClass for arraylength
 		default :
 			return this;
 	}
@@ -1612,6 +1629,10 @@
 		return false;
 	if (that.id != TypeIds.NoId && that.id == other.id)
 		return true;
+	if (that instanceof LocalTypeBinding && other instanceof LocalTypeBinding) {
+		// while a lambda is being resolved, consider a local type as equal to its variant from another lambda copy
+		return ((LocalTypeBinding) that).sourceStart == ((LocalTypeBinding) other).sourceStart;
+	}
 	return false;
 }
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.java
index 30d8eeb..29afb7e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBindingVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.java
index 81e2d67..83b3cd8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeBound.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2013, 2015 GK Software AG and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2013, 2018 GK Software AG and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
@@ -11,7 +14,6 @@
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.compiler.lookup;
 
-import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 
 /**
  * Implementation of 18.1.3 in JLS8
@@ -38,7 +40,7 @@
 	
 	TypeBound(InferenceVariable inferenceVariable, TypeBinding typeBinding, int relation, boolean isSoft) {
 		this.left = inferenceVariable;
-		this.right = safeType(typeBinding);
+		this.right = typeBinding;
 		if (((inferenceVariable.tagBits | this.right.tagBits) & TagBits.AnnotationNullMASK) != 0) {
 			if ((inferenceVariable.tagBits & TagBits.AnnotationNullMASK) == (this.right.tagBits & TagBits.AnnotationNullMASK)) {
 				// strip off identical nullness on both sides:
@@ -58,20 +60,6 @@
 		this.relation = relation;
 		this.isSoft = isSoft;
 	}
-	
-	private TypeBinding safeType(TypeBinding type) {
-		if (type != null && type.isLocalType()) {
-			MethodBinding enclosingMethod = ((LocalTypeBinding) type.original()).enclosingMethod;
-			if (enclosingMethod != null && CharOperation.prefixEquals(TypeConstants.ANONYMOUS_METHOD, enclosingMethod.selector)) {
-				// don't use local class inside lambda: lambda is copied, type will be re-created and thus is unmatchable
-				if (type.superclass().id == TypeIds.T_JavaLangObject && type.superInterfaces().length > 0)
-					return type.superInterfaces()[0];
-				return type.superclass();
-			}
-		}
-		return type;
-	}
-
 
 	/** distinguish bounds from dependencies. */
 	boolean isBound() {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.java
index d8a020f..5a25687 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java
index 88d7301..143c211 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeIds.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.java
index ccac9eb..03985a1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeSystem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -337,7 +340,7 @@
 	   they may and we need to materialize the unannotated versions and work on them.
 	*/ 
 	public RawTypeBinding getRawType(ReferenceBinding genericType, ReferenceBinding enclosingType) {
-		if (genericType.isStatic() && enclosingType != null) {
+		if (!genericType.hasEnclosingInstanceContext() && enclosingType != null) {
 			enclosingType = (ReferenceBinding) enclosingType.original();
 		}
 		ReferenceBinding unannotatedGenericType = (ReferenceBinding) getUnannotatedType(genericType);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.java
index 8aa393c..82a173c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/TypeVariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.java
index a9e5e99..ef44c5c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedAnnotationBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.java
index b4a6086..52cc2b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/UnresolvedReferenceBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.java
index ca6d54f..24b89f2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VariableBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.java
index 50a6f0b..60bca5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/VoidTypeBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.java
index 05216ce..0fc0ed7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/lookup/WildcardBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
index 1d1a5bb..7b28fe3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2016 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java
index d1bada6..8779194 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.java
index 4e5d2b0..471aab3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ConflictedParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.java
index 3837daa..295150f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.java
index cb74158..e4cef88 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/JavadocTagConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -152,6 +155,8 @@
 		// since 9
 		{},
 		// since 10
+		{},
+		// since 11
 		{}
 	};
 	public static final char[][][] INLINE_TAGS = {
@@ -176,6 +181,8 @@
 		// since 9
 		{},
 		// since 10
+		{},
+		// since 11
 		{}
 	};
 	public final static int INLINE_TAGS_LENGTH = INLINE_TAGS.length;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.java
index 768b4fd..b77526c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/NLSTag.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java
index 72a5433..60be3d1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *  
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.java
index 987c1cc..07d32bc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.java
index 7042c4b..db9b598 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredBlock.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
@@ -18,6 +21,7 @@
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Block;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.FieldDeclaration;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ForeachStatement;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.LocalDeclaration;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration;
@@ -169,9 +173,16 @@
 
 	RecoveredStatement element = new RecoveredStatement(stmt, this, bracketBalanceValue);
 	attach(element);
-	if (stmt.sourceEnd == 0) return element;
+	if (!isEndKnown(stmt)) return element;
 	return this;
 }
+boolean isEndKnown(Statement stmt) {
+	if (stmt instanceof ForeachStatement) {
+		if (((ForeachStatement) stmt).action == null)
+			return false;
+	}
+	return stmt.sourceEnd != 0;
+}
 /*
  * Addition of a type to an initializer (act like inside method body)
  */
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.java
index 46f1400..04546a1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.java
index fcaeed4..beb21b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExport.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.java
index 17b4486..0426d6a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredExportsStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.java
index da2c965..363116e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.java
index 329e66e..b0eeb18 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredImport.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.java
index 1a47361..1cb737b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.java
index 4f9b663..b52a75c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredLocalVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.java
index 7a99342..6c445fa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.java
index a22a694..7f3b6cf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.java
index 6c91205..35991d0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.java
index d6ac4b4..b667267 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredModuleStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.java
index 99916c2..216b5d3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredOpensStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.java
index 552e6fd..409517e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredPackageVisibilityStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.java
index f9ba59a..8fedd2f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredProvidesStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.java
index 7d5849c..b8f63f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredRequiresStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.java
index bf77954..fa0068f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -17,12 +20,15 @@
 import java.util.Set;
 
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Block;
+import org.aspectj.org.eclipse.jdt.internal.compiler.ast.ForeachStatement;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration;
 
 public class RecoveredStatement extends RecoveredElement {
 
 	public Statement statement;
+	RecoveredBlock nestedBlock;
 	
 public RecoveredStatement(Statement statement, RecoveredElement parent, int bracketBalance){
 	super(parent, bracketBalance);
@@ -48,6 +54,10 @@
 	return tabString(tab) + "Recovered statement:\n" + this.statement.print(tab + 1, new StringBuffer(10)); //$NON-NLS-1$
 }
 public Statement updatedStatement(int depth, Set<TypeDeclaration> knownTypes){
+	if (this.nestedBlock != null) {
+		this.nestedBlock.updatedStatement(depth, knownTypes);
+		// block has already been assigned in its parent statement
+	}
 	return this.statement;
 }
 @Override
@@ -70,4 +80,34 @@
 	}
 	return this;
 }
+@Override
+public RecoveredElement add(Block nestedBlockDeclaration, int bracketBalanceValue) {
+	if (this.statement instanceof ForeachStatement) {
+		ForeachStatement foreach = (ForeachStatement) this.statement;
+		
+		// see RecoveredBlock.add(Block, int):
+		resetPendingModifiers();
+
+		/* do not consider a nested block starting passed the block end (if set)
+			it must be belonging to an enclosing block */
+		if (foreach.sourceEnd != 0
+			&& foreach.action != null // if action is unassigned then foreach.sourceEnd is not yet the real end.
+			&& nestedBlockDeclaration.sourceStart > foreach.sourceEnd) {
+			return this.parent.add(nestedBlockDeclaration, bracketBalanceValue);
+		}
+		foreach.action = nestedBlockDeclaration;
+
+		RecoveredBlock element = new RecoveredBlock(nestedBlockDeclaration, this, bracketBalanceValue);
+
+		if(parser().statementRecoveryActivated) {
+			addBlockStatement(element);
+		}
+		this.nestedBlock = element;
+		
+		if (nestedBlockDeclaration.sourceEnd == 0) return element;
+		return this;
+	} else {
+		return super.add(nestedBlockDeclaration, bracketBalanceValue);
+	}
+}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.java
index 00088e0..4d808c4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.java
index b82a001..57e4467 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredTypeReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.java
index 8774cdd..4ace6b1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.java
index 4046361..fc8da27 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveredUsesStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.java
index db41f3b..3eef1e3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.java
index 0dcc9b4..a066d90 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/RecoveryScannerData.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.java
index 8261b13..cbfadc4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/ScannerHelper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2005, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2005, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -43,6 +46,7 @@
 	private static long[][][] Tables7;
 	private static long[][][] Tables8;
 	private static long[][][] Tables9;
+	private static long[][][] Tables11;
 
 	public final static int MAX_OBVIOUS = 128;
 	public final static int[] OBVIOUS_IDENT_CHAR_NATURES = new int[MAX_OBVIOUS];
@@ -144,95 +148,84 @@
 static void initializeTable19() {
 	Tables9 = initializeTables("unicode8"); //$NON-NLS-1$
 }
+static void initializeTableJava11() {
+	Tables11 = initializeTables("unicode10"); //$NON-NLS-1$
+}
 static long[][][] initializeTables(String unicode_path) {
 	long[][][] tempTable = new long[2][][];
 	tempTable[START_INDEX] = new long[3][];
 	tempTable[PART_INDEX] = new long[4][];
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start0.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start0.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[START_INDEX][0] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start1.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start1.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[START_INDEX][1] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start2.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/start2.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[START_INDEX][2] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part0.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part0.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[PART_INDEX][0] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part1.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part1.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[PART_INDEX][1] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part2.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part2.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[PART_INDEX][2] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
 	} catch (IOException e) {
 		e.printStackTrace();
 	}
-	try {
-		DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part14.rsc"))); //$NON-NLS-1$
+	try (DataInputStream inputStream = new DataInputStream(new BufferedInputStream(ScannerHelper.class.getResourceAsStream(unicode_path + "/part14.rsc")))) { //$NON-NLS-1$
 		long[] readValues = new long[1024];
 		for (int i = 0; i < 1024; i++) {
 			readValues[i] = inputStream.readLong();
 		}
-		inputStream.close();
 		tempTable[PART_INDEX][3] = readValues;
 	} catch (FileNotFoundException e) {
 		e.printStackTrace();
@@ -260,68 +253,50 @@
 	}
 	return isJavaIdentifierPart(complianceLevel, (int) c);
 }
+private static boolean isJavaIdentifierPart0(int codePoint, long[][][] tables) {
+		switch((codePoint & 0x1F0000) >> 16) {
+			case 0 :
+			return isBitSet(tables[PART_INDEX][0], codePoint & 0xFFFF);
+			case 1 :
+			return isBitSet(tables[PART_INDEX][1], codePoint & 0xFFFF);
+			case 2 :
+			return isBitSet(tables[PART_INDEX][2], codePoint & 0xFFFF);
+			case 14 :
+			return isBitSet(tables[PART_INDEX][3], codePoint & 0xFFFF);
+	}
+	return false;
+		}
 public static boolean isJavaIdentifierPart(long complianceLevel, int codePoint) {
 	if (complianceLevel <= ClassFileConstants.JDK1_6) {
 		if (Tables == null) {
 			initializeTable();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables[PART_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables[PART_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables[PART_INDEX][2], codePoint & 0xFFFF);
-			case 14 :
-				return isBitSet(Tables[PART_INDEX][3], codePoint & 0xFFFF);
-		}
+		return isJavaIdentifierPart0(codePoint, Tables);
 	} else if (complianceLevel <= ClassFileConstants.JDK1_7) {
 		// java 7 supports Unicode 6
 		if (Tables7 == null) {
 			initializeTable17();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables7[PART_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables7[PART_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables7[PART_INDEX][2], codePoint & 0xFFFF);
-			case 14 :
-				return isBitSet(Tables7[PART_INDEX][3], codePoint & 0xFFFF);
-		}
+		return isJavaIdentifierPart0(codePoint, Tables7);
 	} else if (complianceLevel <= ClassFileConstants.JDK1_8) {
 		// java 8 supports Unicode 6.2
 		if (Tables8 == null) {
 			initializeTable18();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables8[PART_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables8[PART_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables8[PART_INDEX][2], codePoint & 0xFFFF);
-			case 14 :
-				return isBitSet(Tables8[PART_INDEX][3], codePoint & 0xFFFF);
-		}
-	} else {
-		// java 9 supports Unicode 8
+		return isJavaIdentifierPart0(codePoint, Tables8);
+	} else if (complianceLevel <= ClassFileConstants.JDK10) {
+		// java 9/10 supports Unicode 8
 		if (Tables9 == null) {
 			initializeTable19();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables9[PART_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables9[PART_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables9[PART_INDEX][2], codePoint & 0xFFFF);
-			case 14 :
-				return isBitSet(Tables9[PART_INDEX][3], codePoint & 0xFFFF);
+		return isJavaIdentifierPart0(codePoint, Tables9);
+	} else {
+		// java 11 supports Unicode 10
+		if (Tables11 == null) {
+			initializeTableJava11();
 		}
+		return isJavaIdentifierPart0(codePoint, Tables11);
 	}
-	return false;
 }
 public static boolean isJavaIdentifierPart(long complianceLevel, char high, char low) {
 	return isJavaIdentifierPart(complianceLevel, toCodePoint(high, low));
@@ -341,60 +316,48 @@
 public static boolean isJavaIdentifierStart(long complianceLevel, char high, char low) {
 	return isJavaIdentifierStart(complianceLevel, toCodePoint(high, low));
 }
+private static boolean isJavaIdentifierStart0(int codePoint, long[][][] tables) {
+		switch((codePoint & 0x1F0000) >> 16) {
+			case 0 :
+			return isBitSet(tables[START_INDEX][0], codePoint & 0xFFFF);
+			case 1 :
+			return isBitSet(tables[START_INDEX][1], codePoint & 0xFFFF);
+			case 2 :
+			return isBitSet(tables[START_INDEX][2], codePoint & 0xFFFF);
+	}
+	return false;
+}
 public static boolean isJavaIdentifierStart(long complianceLevel, int codePoint) {
 	if (complianceLevel <= ClassFileConstants.JDK1_6) {
 		if (Tables == null) {
 			initializeTable();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables[START_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables[START_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables[START_INDEX][2], codePoint & 0xFFFF);
-		}
+		return isJavaIdentifierStart0(codePoint, Tables);
 	} else if (complianceLevel <= ClassFileConstants.JDK1_7) {
 		// java 7 supports Unicode 6
 		if (Tables7 == null) {
 			initializeTable17();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables7[START_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables7[START_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables7[START_INDEX][2], codePoint & 0xFFFF);
-		}
+		return isJavaIdentifierStart0(codePoint, Tables7);
 	} else if (complianceLevel <= ClassFileConstants.JDK1_8) {
-		// java 7 supports Unicode 6
+		// java 8 supports Unicode 6.2
 		if (Tables8 == null) {
 			initializeTable18();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables8[START_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables8[START_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables8[START_INDEX][2], codePoint & 0xFFFF);
-		}
-	} else {
-		// java 9 supports Unicode 7
+		return isJavaIdentifierStart0(codePoint, Tables8);
+	} else if (complianceLevel <= ClassFileConstants.JDK10) {
+		// java 9/10 supports Unicode 8
 		if (Tables9 == null) {
 			initializeTable19();
 		}
-		switch((codePoint & 0x1F0000) >> 16) {
-			case 0 :
-				return isBitSet(Tables9[START_INDEX][0], codePoint & 0xFFFF);
-			case 1 :
-				return isBitSet(Tables9[START_INDEX][1], codePoint & 0xFFFF);
-			case 2 :
-				return isBitSet(Tables9[START_INDEX][2], codePoint & 0xFFFF);
+		return isJavaIdentifierStart0(codePoint, Tables9);
+	} else {
+		// java 11 supports Unicode 10
+		if (Tables11 == null) {
+			initializeTableJava11();
 		}
+		return isJavaIdentifierStart0(codePoint, Tables11);
 	}
-	return false;
 }
 private static int toCodePoint(char high, char low) {
 	return (high - Scanner.HIGH_SURROGATE_MIN_VALUE) * 0x400 + (low - Scanner.LOW_SURROGATE_MIN_VALUE) + 0x10000;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java
index 1ff4d75..8c36206 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/SourceTypeConverter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java
index b48ec26..8656459 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  *
  * Contributors:
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.java
index a4ff449..1e91729 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTParserClass.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -822,6 +825,10 @@
 	public static int tAction(int state, int sym) {
 		return term_action[term_check[base_action[state]+sym] == sym ? base_action[state] + sym : base_action[state]];
 	}
+	/** Overridable hook, to allow CompletionParser to synthesize a few trailing tokens at (faked) EOF. */
+	protected int actFromTokenOrSynthetic(int previousAct) {
+		return tAction(previousAct, this.currentToken);
+	}
 	protected int astLengthPtr;
 
 	protected int[] astLengthStack;
@@ -9319,12 +9326,7 @@
 	do {
 		try {
 			this.scanner.lookBack[0] = this.scanner.lookBack[1] = TokenNameNotAToken; // stay clear of the voodoo in the present method
-			this.nextIgnoredToken = this.scanner.getNextToken();
-			if(this.scanner.currentPosition == this.scanner.startPosition){
-				this.scanner.currentPosition++; // on fake completion identifier
-				this.nextIgnoredToken = -1;
-			}
-
+			this.nextIgnoredToken = this.scanner.getNextNotFakedToken();
 		} catch(InvalidInputException e){
 			pos = this.scanner.currentPosition;
 		} finally {
@@ -9535,7 +9537,7 @@
 				stackLength);
 		}
 		this.stack[this.stateStackTop] = act;
-		this.unstackedAct = act = tAction(act, this.currentToken);
+		this.unstackedAct = act = actFromTokenOrSynthetic(act);
 		if (act == ERROR_ACTION || this.restartRecovery) {
 			if (DEBUG_AUTOMATON) {
 				if (this.restartRecovery) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.java
index d69b6f8..d3247bd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TheOriginalJDTScannerClass.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -211,7 +214,7 @@
 		newEntry6 = 0;
 	public boolean insideRecovery = false;
 	int lookBack[] = new int[2]; // fall back to spring forward.
-	int nextToken = TokenNameNotAToken; // allows for one token push back, only the most recent token can be reliably ungotten.
+	protected int nextToken = TokenNameNotAToken; // allows for one token push back, only the most recent token can be reliably ungotten.
 	private VanguardScanner vanguardScanner;
 	private VanguardParser vanguardParser;
 	ConflictedParser activeParser = null;
@@ -4944,4 +4947,9 @@
 		}
 	}
 }
+
+/** Overridable hook, to allow CompletionScanner to hide a faked identifier token. */
+protected int getNextNotFakedToken() throws InvalidInputException {
+	return getNextToken();
+}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.java
index 902cd26..310f2c9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/TypeConverter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2008, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.java
index ca0b696..fdb6b4a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/DiagnoseParser.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.java
index d8a89ff..18b4cdd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/LexStream.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.java
index 0d7b138..b8cccaa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/diagnose/RangeUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc
new file mode 100644
index 0000000..c2a638f
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part0.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc
new file mode 100644
index 0000000..87cad85
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part1.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc
new file mode 100644
index 0000000..c8241e8
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part14.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc
new file mode 100644
index 0000000..ab6b33e
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/part2.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc
new file mode 100644
index 0000000..a416236
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start0.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc
new file mode 100644
index 0000000..5856a2a
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start1.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc
new file mode 100644
index 0000000..ab6b33e
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/parser/unicode10/start2.rsc
Binary files differ
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.java
index 3180d7a..d32eb78 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.java
index ae2c3b7..5857ebe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.java
index 6ffe30f..cecb8e2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.java
index 1b9ec5d..809cc47 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/AbortType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.java
index f5eb192..2953bdf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblem.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.java
index cd8e3e8..0d3efdb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/DefaultProblemFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -199,8 +202,7 @@
 		}
 	}
 
-	// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=120410
-	return new String(output.toString());
+	return output.toString();
 }
 /**
  * @param problem CategorizedProblem
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.java
index 4cfb4b7..f95ce98 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemHandler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java
index 1b39b3c..3260b83 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -248,14 +251,12 @@
 		case IProblem.UsingDeprecatedMethod :
 		case IProblem.UsingDeprecatedConstructor :
 		case IProblem.UsingDeprecatedField :
-		case IProblem.UsingDeprecatedPackage :
 		case IProblem.UsingDeprecatedModule :
 		case IProblem.OverridingDeprecatedSinceVersionMethod :
 		case IProblem.UsingDeprecatedSinceVersionType :
 		case IProblem.UsingDeprecatedSinceVersionMethod :
 		case IProblem.UsingDeprecatedSinceVersionConstructor :
 		case IProblem.UsingDeprecatedSinceVersionField :
-		case IProblem.UsingDeprecatedSinceVersionPackage :
 		case IProblem.UsingDeprecatedSinceVersionModule :
 			return CompilerOptions.UsingDeprecatedAPI;
 
@@ -264,14 +265,12 @@
 		case IProblem.UsingTerminallyDeprecatedMethod :
 		case IProblem.UsingTerminallyDeprecatedConstructor :
 		case IProblem.UsingTerminallyDeprecatedField :
-		case IProblem.UsingTerminallyDeprecatedPackage :
 		case IProblem.UsingTerminallyDeprecatedModule :
 		case IProblem.OverridingTerminallyDeprecatedSinceVersionMethod :
 		case IProblem.UsingTerminallyDeprecatedSinceVersionType :
 		case IProblem.UsingTerminallyDeprecatedSinceVersionMethod :
 		case IProblem.UsingTerminallyDeprecatedSinceVersionConstructor :
 		case IProblem.UsingTerminallyDeprecatedSinceVersionField :
-		case IProblem.UsingTerminallyDeprecatedSinceVersionPackage :
 		case IProblem.UsingTerminallyDeprecatedSinceVersionModule :
 			return CompilerOptions.UsingTerminallyDeprecatedAPI;
 
@@ -1856,6 +1855,7 @@
 			nodeSourceEnd(null, location, index));
 	}
 }
+/*
 public void deprecatedPackage(ImportReference pkgRef, PackageBinding resolvedPackage, TypeBinding packageInfo) {
 	String sinceValue = deprecatedSinceValue(() -> packageInfo.isValidBinding() ? packageInfo.getAnnotations() : Binding.NO_ANNOTATIONS);
 	boolean isTerminally = (resolvedPackage.tagBits & TagBits.AnnotationTerminallyDeprecated) != 0;
@@ -1874,7 +1874,7 @@
 				pkgRef.sourceStart,
 				pkgRef.sourceEnd);
 	}
-}
+}*/
 public void deprecatedModule(ModuleReference moduleReference, ModuleBinding requiredModule) {
 	String sinceValue = deprecatedSinceValue(() -> requiredModule.getAnnotations());
 	boolean isTerminally = (requiredModule.tagBits & TagBits.AnnotationTerminallyDeprecated) != 0;
@@ -1896,6 +1896,8 @@
 }
 String deprecatedSinceValue(Supplier<AnnotationBinding[]> annotations) {
 	if (this.options != null && this.options.complianceLevel >= ClassFileConstants.JDK9) {
+		ReferenceContext contextSave = this.referenceContext;
+		try {
 		for (AnnotationBinding annotationBinding : annotations.get()) {
 			if (annotationBinding.getAnnotationType().id == TypeIds.T_JavaLangDeprecated) {
 				for (ElementValuePair elementValuePair : annotationBinding.getElementValuePairs()) {
@@ -1905,6 +1907,9 @@
 				break;
 			}
 		}
+		} finally {
+			this.referenceContext = contextSave;
+		}
 	}
 	return null;
 }
@@ -8545,8 +8550,8 @@
 		nodeSourceStart(field, location),
 		nodeSourceEnd(field, location));
 }
-public void uninitializedLocalVariable(LocalVariableBinding binding, ASTNode location) {
-	binding.tagBits |= TagBits.NotInitialized;
+public void uninitializedLocalVariable(LocalVariableBinding binding, ASTNode location, Scope scope) {
+	binding.markAsUninitializedIn(scope);
 	String[] arguments = new String[] {new String(binding.readableName())};
 	this.handle(
 		methodHasMissingSwitchDefault() ? IProblem.UninitializedLocalVariableHintMissingDefault : IProblem.UninitializedLocalVariable,
@@ -9490,6 +9495,14 @@
 		astNode.sourceStart,
 		astNode.sourceEnd);
 }
+public void varCannotBeMixedWithNonVarParams(ASTNode astNode) {
+	this.handle(
+		IProblem.VarCannotBeMixedWithNonVarParams,
+		NoArgument,
+		NoArgument,
+		astNode.sourceStart,
+		astNode.sourceEnd);
+}
 public void variableTypeCannotBeVoidArray(AbstractVariableDeclaration varDecl) {
 	this.handle(
 		IProblem.CannotAllocateVoidArray,
@@ -10257,7 +10270,8 @@
 	char[][] annotationNames = (nullAnnotationTagBit == TagBits.AnnotationNonNull)
 			? this.options.nonNullAnnotationName
 			: this.options.nullableAnnotationName;
-	String[] args = new String[] { new String(annotationNames[annotationNames.length-1]), new String(type.getLastToken()) };
+	String typeName = new String(type.resolvedType.leafComponentType().readableName()); // use the actual name (accounting for 'var')
+	String[] args = new String[] { new String(annotationNames[annotationNames.length-1]), typeName };
 	Annotation annotation = findAnnotation(annotations, typeBit);
 	int start = annotation != null ? annotation.sourceStart : type.sourceStart;
 	int end = annotation != null ? annotation.sourceEnd : type.sourceEnd;
@@ -10389,6 +10403,7 @@
 }
 public void nullityMismatchingTypeAnnotation(Expression expression, TypeBinding providedType, TypeBinding requiredType, NullAnnotationMatching status) 
 {
+	if (providedType == requiredType) return; //$IDENTITY-COMPARISON$
 	// try to improve nonnull vs. null:
 	if (providedType.id == TypeIds.T_null || status.nullStatus == FlowInfo.NULL) {
 		nullityMismatchIsNull(expression, requiredType);
@@ -11010,7 +11025,6 @@
 	handle(IProblem.UnnamedPackageInNamedModule,
 			args,
 			args,
-			ProblemSeverities.Warning,
 			0,
 			0);
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemSeverities.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemSeverities.java
index 1a290a0..f1e3da3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemSeverities.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ProblemSeverities.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.java
index 7cf0956..53c41cb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/ShouldNotImplement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
index d1220d9..466b817 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/problem/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 # 
 #
 # Contributors:
@@ -953,18 +956,19 @@
 1461 = Name of automatic module ''{0}'' is unstable, it is derived from the module''s file name.
 
 # Local-Variable Type Inference
-1500 = ''var'' is not allowed in a compound declaration
-1501 = ''var'' is not allowed as an element type of an array
-1502 = Declaration using ''var'' may not contain references to itself
-1503 = Cannot use ''var'' on variable without initializer
-1504 = Cannot infer type for local variable initialized to ''null''
-1505 = Variable initializer is ''void'' -- cannot infer variable type
+1500 = 'var' is not allowed in a compound declaration
+1501 = 'var' is not allowed as an element type of an array
+1502 = Declaration using 'var' may not contain references to itself
+1503 = Cannot use 'var' on variable without initializer
+1504 = Cannot infer type for local variable initialized to 'null'
+1505 = Variable initializer is 'void' -- cannot infer variable type
 1506 = Array initializer needs an explicit target-type
 1507 = Lambda expression needs an explicit target-type
 1508 = Method reference needs an explicit target-type
-1509 = ''var'' is not a valid type name
-1510 = ''var'' should not be used as an type name, since it is a reserved word from source level 10 on
-1511 = ''var'' is not allowed here
+1509 = 'var' is not a valid type name
+1510 = 'var' should not be used as an type name, since it is a reserved word from source level 10 on
+1511 = 'var' is not allowed here
+1512 = 'var' cannot be mixed with non-var parameters
 
 ### ELABORATIONS
 ## Access restrictions
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.java
index 47f9958..64b2b85 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/CompoundNameVector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.java
index b82acf1..eea98f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/FloatUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.java
index 44b46c2..8dff6d5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/GenericXMLWriter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.java
index 07c0699..99cc16c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashSetOfInt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.java
index 6a3ed08..8a1f0b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.java
index 75438d5..820e952 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfIntValues.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.java
index 86662bf..d919643 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfInteger.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.java
index 5e2e01b..a595e9c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfLong.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.java
index b8214ed..db2f190 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.java
index a7430bf..2f8f9fe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.java
index a5a1d71..670bfcf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToInt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.java
index 7c68b91..0de891a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfObjectToIntArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.java
index 5a7479c..c173cab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfPackage.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.java
index 47bac61..be8bda1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/HashtableOfType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.java
index a740c20..78e9bb8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/JRTUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2017 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.java
index 687eb02..a287a3b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ManifestAnalyzer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.java
index 6f9a573..f4cc089 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Messages.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.java
index d436eed..93ac1c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/ObjectVector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.java
index b3ad21b..220abd7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleLookupTable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.java
index de9f29f..2fe179c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleNameVector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.java
index 18769fe..ad0aae4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.java
index 372c053..285273a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.java
index a6200ca..84d7235 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Sorting.java
@@ -1,9 +1,12 @@
 /**********************************************************************
  * Copyright (c) 2008, 2014 Technical University Berlin, Germany and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *		Stephan Herrmann - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.java
index ffbe63f..879eb8b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/SuffixConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.java
index 851c834..ed3e814 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/compiler/util/Util.java
@@ -1,10 +1,13 @@
 // ASPECTJ
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -1258,7 +1261,7 @@
 		}
 		List<FileSystem.Classpath> classpaths = new ArrayList<>();
 		for (String filePath : filePaths) {
-			FileSystem.Classpath currentClasspath = FileSystem.getClasspath(filePath, null, null, null);
+			FileSystem.Classpath currentClasspath = FileSystem.getClasspath(filePath, null, null, null, null);
 			if (currentClasspath != null) {
 				classpaths.add(currentClasspath);
 			}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.java
index 9a6aff2..fbd6201 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ASTHolderCUInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.java
index ec241eb..39a6747 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.java
index dcc10b3..503def1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AbstractModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.java
index 7fd5b7f..c563f4c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotatableInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Annotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Annotation.java
index 1404915..18e5f42 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Annotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Annotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.java
index 9899752..a8d7231 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/AnnotationInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.java
index df1f03a..b1691b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BasicCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.java
index 94afc19..4f37ad0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchInitializationMonitor.java
@@ -3,10 +3,13 @@
 
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.java
index 5967038..cb88577 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BatchOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.java
index 617fa27..13c0d69 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BecomeWorkingCopyOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.java
index d3b931c..119e7b2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.java
index 117b797..ee8c0dd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.java
index 6b26f7e..c944bff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryLambdaMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.java
index 09173b1..62603a4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMember.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.java
index e95d01b..02c853e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.java
index cdc4849..cd691fa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.java
index 1db6c11..256a0a5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -509,7 +512,7 @@
 		if (superclassName == null) {
 			return null;
 		}
-		return new String(Signature.createTypeSignature(ClassFile.translatedName(superclassName), true));
+		return Signature.createTypeSignature(ClassFile.translatedName(superclassName), true);
 	}
 }
 
@@ -605,7 +608,7 @@
 		names= ClassFile.translatedNames(names);
 		String[] strings= new String[length];
 		for (int i= 0; i < length; i++) {
-			strings[i]= new String(Signature.createTypeSignature(names[i], true));
+			strings[i]= Signature.createTypeSignature(names[i], true);
 		}
 		return strings;
 	}
@@ -1008,7 +1011,7 @@
 				typeName.insert(0, '.');
 			}
 		}
-		typeQualifiedName = new String(typeName.toString());
+		typeQualifiedName = typeName.toString();
 	} else {
 		typeQualifiedName = getElementName();
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.java
index db6f9ed..e55d025 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BinaryTypeConverter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Buffer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Buffer.java
index ecf38dc..7912dc8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Buffer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Buffer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.java
index 8c7a584..19ef294 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.java
index 024e192..1bdd57c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferFactoryWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.java
index aea8608..9ef0250 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/BufferManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.java
index a690abd..08ca313 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableNameEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.java
index 9172e52..b6c88a9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CancelableProblemFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.java
index 63ed1c1..a687a54 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ChangeClasspathOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.java
index a091c7a..2cda432 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -76,7 +79,7 @@
 	if (typeInfo == null) {
 		// The structure of a class file is unknown if a class file format errors occurred
 		//during the creation of the diet class file representative of this ClassFile.
-		info.setChildren(new IJavaElement[] {});
+		info.setChildren(JavaElement.NO_ELEMENTS);
 		return false;
 	}
 	
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.java
index cd39362..93cc81b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.java
index 43566a0..c8dccc0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClassFileWorkingCopy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.java
index aec1bbe..1cc85de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAccessRule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.java
index 1921a99..2266ae2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.java
index 9ed7848..c7cdb4a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathChange.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.java
index 1172868..bcf7a38 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -29,6 +32,7 @@
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -385,6 +389,27 @@
 		return this;
 	}
 
+	
+	public ClasspathEntry withExtraAttributeRemoved(String attrName) {
+		IClasspathAttribute[] changedAttributes = Arrays.stream(this.getExtraAttributes())
+				.filter(a -> !a.getName().equals(attrName)).toArray(IClasspathAttribute[]::new);
+		return new ClasspathEntry(
+				this.getContentKind(),
+				this.getEntryKind(),
+				this.getPath(),
+				this.getInclusionPatterns(),
+				this.getExclusionPatterns(),
+				this.getSourceAttachmentPath(),
+				this.getSourceAttachmentRootPath(),
+				this.getOutputLocation(),
+				this.getReferencingEntry(),
+				this.isExported(),
+				this.getAccessRules(),
+				this.combineAccessRules(),
+				changedAttributes);
+	}
+
+	
 	private IAccessRule[] combine(IAccessRule[] referringRules, IAccessRule[] rules, boolean combine) {
 		if (!combine) return rules;
 		if (rules == null || rules.length == 0) return referringRules;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.java
index f71d205..895bb03 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ClasspathValidation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.java
index b10aab4..688dfb4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CommitWorkingCopyOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.java
index 069124d..034acf2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.java
index 3749694..dfe9d9b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.java
index 2c4ec57..fdd6d7b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitProblemFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.java
index ddc12f5..ce27568 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CompilationUnitStructureRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.java
index ce6ea04..8141926 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.java
index 3e8e73d..c74cf26 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyPackageFragmentRootOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.java
index 160b643..986e370 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CopyResourceElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -87,7 +90,7 @@
 		initializeASTParser();
 	}
 	private void initializeASTParser() {
-		this.parser = ASTParser.newParser(AST.JLS10);
+		this.parser = ASTParser.newParser(AST.JLS11);
 	}
 	/**
 	 * Returns the children of <code>source</code> which are affected by this operation.
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.java
index 9e4cfd0..597857c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateCompilationUnitOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.java
index 04f0a2e..49add84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateElementInCUOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -264,7 +267,7 @@
 		// ensure cu is consistent (noop if already consistent)
 		cu.makeConsistent(this.progressMonitor);
 		// create an AST for the compilation unit
-		ASTParser parser = ASTParser.newParser(AST.JLS10);
+		ASTParser parser = ASTParser.newParser(AST.JLS11);
 		parser.setSource(cu);
 		return (CompilationUnit) parser.createAST(this.progressMonitor);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.java
index 73ba4a5..437cd7e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateFieldOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.java
index 2cdd68f..1313544 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateImportOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.java
index ad3d969..5a82251 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateInitializerOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.java
index cec1d78..dd96e78 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateMethodOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.java
index 66f1a32..44b94af 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageDeclarationOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.java
index 0c421d3..a97de20 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreatePackageFragmentOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.java
index b13e697..f10a447 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeHierarchyOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.java
index 8405c95..35efb12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeMemberOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -80,7 +83,7 @@
 protected ASTNode generateElementAST(ASTRewrite rewriter, ICompilationUnit cu) throws JavaModelException {
 	if (this.createdNode == null) {
 		this.source = removeIndentAndNewLines(this.source, cu);
-		ASTParser parser = ASTParser.newParser(AST.JLS10);
+		ASTParser parser = ASTParser.newParser(AST.JLS11);
 		parser.setSource(this.source.toCharArray());
 		parser.setProject(getCompilationUnit().getJavaProject());
 		parser.setKind(ASTParser.K_CLASS_BODY_DECLARATIONS);
@@ -167,7 +170,7 @@
 	buff.append(lineSeparator + " public class A {" + lineSeparator); //$NON-NLS-1$
 	buff.append(this.source);
 	buff.append(lineSeparator).append('}');
-	ASTParser parser = ASTParser.newParser(AST.JLS10);
+	ASTParser parser = ASTParser.newParser(AST.JLS11);
 	parser.setSource(buff.toString().toCharArray());
 	CompilationUnit compilationUnit = (CompilationUnit) parser.createAST(null);
 	TypeDeclaration typeDeclaration = (TypeDeclaration) compilationUnit.types().iterator().next();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.java
index 1df5a08..66f5215 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/CreateTypeOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.java
index 4545251..e1ed7f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DefaultWorkingCopyOwner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.java
index 7c2837a..702c1ec 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -81,7 +84,7 @@
 	}
 
 	private void initASTParser() {
-		this.parser = ASTParser.newParser(AST.JLS10);
+		this.parser = ASTParser.newParser(AST.JLS11);
 	}
 
 	/**
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.java
index ed7815d..3f9597d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeletePackageFragmentRootOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.java
index db5d038..ee73613 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeleteResourceElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.java
index 69e8348..efe8df8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessingState.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.java
index 7ce1277..f58444c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DeltaProcessor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -31,6 +34,7 @@
 import org.eclipse.core.resources.IWorkspaceRunnable;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.*;
+import org.eclipse.core.runtime.jobs.MultiRule;
 import org.aspectj.org.eclipse.jdt.core.*;
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.SourceElementParser;
@@ -898,7 +902,7 @@
 							}
 						};
 						try {
-							ResourcesPlugin.getWorkspace().run(runnable, monitor);
+							ResourcesPlugin.getWorkspace().run(runnable, new MultiRule(projectsToTouch), IWorkspace.AVOID_UPDATE, monitor);
 						} catch (CoreException e) {
 							throw new JavaModelException(e);
 						}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.java
index 0428f81..ad59315 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DiscardWorkingCopyOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.java
index e718efa..06d91c4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DocumentAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.java
index f3faf45..a65e4a4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/DynamicProjectReferences.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.java
index 383a031..90d2aad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ElementCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.java
index aa9bfb5..333a15a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalAnnotationTracker.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 GK Software AG.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.java
index 7c47683..9703484 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFolderChange.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.java
index a78cd63..5a546c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalFoldersManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.java
index 0d10adb..1a1c98c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalJavaProject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.java
index 735eeff..1ac27a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ExternalPackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.java
index f5ef4a2..0c4d9e2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IJavaElementRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.java
index 825d9d4..e78ba5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INameEnvironmentWithProgress.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2010, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.java
index f999ab3..6c01fad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/INamingRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.java
index 0b59805..8527c45 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/IPathRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.java
index 9a5fe90..1613e75 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -63,9 +66,9 @@
 public IImportDeclaration getImport(String importName) {
 	int index = importName.indexOf(".*"); ///$NON-NLS-1$
 	boolean isOnDemand = index != -1;
-	if (isOnDemand)
-		// make sure to copy the string (so that it doesn't hold on the underlying char[] that might be much bigger than necessary)
-		importName = new String(importName.substring(0, index));
+	if (isOnDemand) {
+		importName = importName.substring(0, index);
+	}
 	return getImport(importName, isOnDemand);
 }
 protected IImportDeclaration getImport(String importName, boolean isOnDemand) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.java
index 80ae1f8..61a4b98 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportContainerInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.java
index 8c2986e..c52e6de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.java
index 4b72c37..e360ea0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ImportDeclarationElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Initializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Initializer.java
index 75c4a3c..b25c7ca1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Initializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Initializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.java
index 60fc716..121c495 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.java
index bee9d7a..2683794 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InitializerWithChildrenInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.java
index fa36071..878a536 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/InternalNamingConventions.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.java
index 650ee3d..104ca35 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JModPackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.java
index 2e9da20..bf257c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryDirectory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.java
index c9e8835..14b5ac9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.java
index afc29ae..6bae3a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarEntryResource.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.java
index d71829f..23e3c77 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.java
index 6111c14..0c8dd74 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.java
index 17c15df..ef7a255 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -14,6 +17,9 @@
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.jar.Manifest;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipException;
@@ -27,8 +33,10 @@
 import org.aspectj.org.eclipse.jdt.core.IJavaElement;
 import org.aspectj.org.eclipse.jdt.core.IModuleDescription;
 import org.aspectj.org.eclipse.jdt.core.IPackageFragmentRoot;
+import org.aspectj.org.eclipse.jdt.core.JavaCore;
 import org.aspectj.org.eclipse.jdt.core.JavaModelException;
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
 import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants;
 import org.aspectj.org.eclipse.jdt.internal.core.nd.IReader;
@@ -63,6 +71,8 @@
 
 	boolean knownToBeModuleLess;
 
+	private boolean multiVersion;
+
 	/**
 	 * Constructs a package fragment root which is the root of the Java package directory hierarchy
 	 * based on a JAR file that is not contained in a <code>IJavaProject</code> and
@@ -89,7 +99,8 @@
 	@Override
 	protected boolean computeChildren(OpenableElementInfo info, IResource underlyingResource) throws JavaModelException {
 		final HashtableOfArrayToObject rawPackageInfo = new HashtableOfArrayToObject();
-		IJavaElement[] children;
+		final Map<String, String> overridden = new HashMap<>();
+		IJavaElement[] children = NO_ELEMENTS;
 		try {
 			// always create the default package
 			rawPackageInfo.put(CharOperation.NO_STRINGS, new ArrayList[] { EMPTY_LIST, EMPTY_LIST });
@@ -125,15 +136,47 @@
 			// contain an up-to-date entry for this .jar) then fetch it directly from the .jar
 			if (!usedIndex) {
 				Object file = JavaModel.getTarget(getPath(), true);
-				long level = Util.getJdkLevel(file);
-				String compliance = CompilerOptions.versionFromJdkLevel(level);
+				long classLevel = Util.getJdkLevel(file);
+				String projectCompliance = this.getJavaProject().getOption(JavaCore.COMPILER_COMPLIANCE, true);
+				long projectLevel = CompilerOptions.versionToJdkLevel(projectCompliance);
 				ZipFile jar = null;
 				try {
 					jar = getJar();
+					String version = "META-INF/versions/";  //$NON-NLS-1$
+					List<String> versions = new ArrayList<>();
+					if (projectLevel >= ClassFileConstants.JDK9 && jar.getEntry(version) != null) {
+						int earliestJavaVersion = ClassFileConstants.MAJOR_VERSION_9;
+						long latestJDK = CompilerOptions.releaseToJDKLevel(projectCompliance);
+						int latestJavaVer = (int) (latestJDK >> 16);
 
-					for (Enumeration e= jar.entries(); e.hasMoreElements();) {
-						ZipEntry member= (ZipEntry) e.nextElement();
-						initRawPackageInfo(rawPackageInfo, member.getName(), member.isDirectory(), compliance);
+						for(int i = latestJavaVer; i >= earliestJavaVersion; i--) {
+							String s = "" + + (i - 44); //$NON-NLS-1$
+							String versionPath = version + s;
+							if (jar.getEntry(versionPath) != null) {
+								versions.add(s);
+							}
+						}
+					}
+					
+					String[] supportedVersions = versions.toArray(new String[versions.size()]);
+					if (supportedVersions.length > 0) {
+						this.multiVersion = true;
+					}
+					int length = version.length();
+					for (Enumeration<? extends ZipEntry> e= jar.entries(); e.hasMoreElements();) {
+						ZipEntry member= e.nextElement();
+						String name = member.getName();
+						if (this.multiVersion && name.length() > (length + 2) && name.startsWith(version)) {
+							int end = name.indexOf('/', length);
+							if (end >= name.length()) continue;
+							String versionPath = name.substring(0, end);
+							String ver = name.substring(length, end);
+							if(versions.contains(ver) && org.aspectj.org.eclipse.jdt.internal.compiler.util.Util.isClassFileName(name)) {
+								name = name.substring(end + 1);
+								overridden.put(name, versionPath);
+							}
+						}
+						initRawPackageInfo(rawPackageInfo, name, member.isDirectory(), CompilerOptions.versionFromJdkLevel(classLevel));
 					}
 				}  finally {
 					JavaModelManager.getJavaModelManager().closeZipFile(jar);
@@ -159,9 +202,9 @@
 				throw new JavaModelException(e);
 			}
 		}
-
 		info.setChildren(children);
 		((JarPackageFragmentRootInfo) info).rawPackageInfo = rawPackageInfo;
+		((JarPackageFragmentRootInfo) info).overriddenClasses = overridden;
 		return true;
 	}
 	protected IJavaElement[] createChildren(final HashtableOfArrayToObject rawPackageInfo) {
@@ -258,6 +301,20 @@
 	}
 
 	@Override
+	public String getClassFilePath(String classname) {
+		if (this.multiVersion) {
+			JarPackageFragmentRootInfo elementInfo;
+			try {
+				elementInfo = (JarPackageFragmentRootInfo) getElementInfo();
+				String versionPath = elementInfo.overriddenClasses.get(classname);
+				return versionPath == null ? classname : versionPath + '/' + classname;
+			} catch (JavaModelException e) {
+				// move on
+			}
+		}
+		return classname;
+	}
+	@Override
 	public IModuleDescription getModuleDescription() {
 		if (this.knownToBeModuleLess)
 			return null;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.java
index cfc077d..2001662 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JarPackageFragmentRootInfo.java
@@ -1,15 +1,20 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.core;
 
+import java.util.Map;
+
 import org.aspectj.org.eclipse.jdt.internal.core.util.HashtableOfArrayToObject;
 
 /**
@@ -18,4 +23,6 @@
 class JarPackageFragmentRootInfo extends PackageFragmentRootInfo {
 	// a map from package name (String[]) to a size-2 array of Array<String>, the first element being the .class file names, and the second element being the non-Java resource names
 	HashtableOfArrayToObject rawPackageInfo;
+	Map<String, String> overriddenClasses;
+	
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.java
index 4dbbf93..00f9e05 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.java
index 8661676..46d8e31 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaCorePreferenceModifyListener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.java
index bf35734..38e8e11 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.java
index e6ea18f..dc4671b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDelta.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.java
index 2cd0c83..0086010 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementDeltaBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.java
index d0db19a..79f7430 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.java
index 94d8ca6..c7ffc69 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaElementRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.java
index 7fc757e..b57a8c3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModel.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.java
index 627a553..45747ff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -15,7 +18,6 @@
 import java.util.HashMap;
 import java.util.Map;
 
-import org.aspectj.org.eclipse.jdt.core.IAccessRule;
 import org.aspectj.org.eclipse.jdt.core.IJavaElement;
 import org.aspectj.org.eclipse.jdt.core.IJavaProject;
 import org.aspectj.org.eclipse.jdt.core.IPackageFragment;
@@ -80,7 +82,7 @@
 	/**
 	 * Cache of access rules
 	 */
-	protected LRUCache<IAccessRule, IAccessRule> accessRuleCache;
+	protected LRUCache<ClasspathAccessRule, ClasspathAccessRule> accessRuleCache;
 
 
 	/**
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.java
index ebfe12d..f426a7b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.java
index c14648f..c5ebdb7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -264,6 +267,7 @@
 	public static final int BATCH_INITIALIZATION_IN_PROGRESS = 2;
 	public static final int BATCH_INITIALIZATION_FINISHED = 3;
 	public int batchContainerInitializations = NO_BATCH_INITIALIZATION;
+	public Object batchContainerInitializationsLock = new Object();
 
 	public BatchInitializationMonitor batchContainerInitializationsProgress = new BatchInitializationMonitor();
 	public Hashtable<String, ClasspathContainerInitializer> containerInitializersCache = new Hashtable<>(5);
@@ -428,7 +432,7 @@
 
 	public static class CompilationParticipants {
 
-		private final static int MAX_SOURCE_LEVEL = 10 ; // 1.1 to 1.8 and 9, 10
+		private final static int MAX_SOURCE_LEVEL = 11 ; // 1.1 to 1.8 and 9, 10
 
 		/*
 		 * The registered compilation participants (a table from int (source level) to Object[])
@@ -563,30 +567,12 @@
 		private int indexForSourceLevel(String sourceLevel) {
 			if (sourceLevel == null) return 0;
 			int majVersion = (int) (CompilerOptions.versionToJdkLevel(sourceLevel) >>> 16);
-			switch (majVersion) {
-				case ClassFileConstants.MAJOR_VERSION_1_2:
-					return 1;
-				case ClassFileConstants.MAJOR_VERSION_1_3:
-					return 2;
-				case ClassFileConstants.MAJOR_VERSION_1_4:
-					return 3;
-				case ClassFileConstants.MAJOR_VERSION_1_5:
-					return 4;
-				case ClassFileConstants.MAJOR_VERSION_1_6:
-					return 5;
-				case ClassFileConstants.MAJOR_VERSION_1_7:
-					return 6;
-				case ClassFileConstants.MAJOR_VERSION_1_8:
-					return 7;
-				case ClassFileConstants.MAJOR_VERSION_9:
-					return 8;
-				case ClassFileConstants.MAJOR_VERSION_10:
-					return 9;
-				default:
+			if (majVersion > ClassFileConstants.MAJOR_VERSION_1_2) {
+				return (majVersion - ClassFileConstants.MAJOR_VERSION_1_1);
+			}
 					// all other cases including ClassFileConstants.MAJOR_VERSION_1_1
 					return 0;
 			}
-		}
 
 		private int sortParticipants(ArrayList<IConfigurationElement> group, IConfigurationElement[] configElements, int index) {
 			int size = group.size();
@@ -670,6 +656,15 @@
 		return container;
 	}
 
+	synchronized boolean containerIsSet(IJavaProject project, IPath containerPath) {
+		Map<IPath, IClasspathContainer> projectContainers = this.containers.get(project);
+		if (projectContainers == null){
+			return false;
+		}
+		IClasspathContainer container = projectContainers.get(containerPath);
+		return container != null;
+	}
+
 	public synchronized IClasspathContainer containerGetDefaultToPreviousSession(IJavaProject project, IPath containerPath) {
 		Map<IPath, IClasspathContainer> projectContainers = this.containers.get(project);
 		if (projectContainers == null)
@@ -928,7 +923,7 @@
 		);
 	}
 
-	private void containerRemoveInitializationInProgress(IJavaProject project, IPath containerPath) {
+	void containerRemoveInitializationInProgress(IJavaProject project, IPath containerPath) {
 		Map<IJavaProject, Set<IPath>> initializations = this.containerInitializationInProgress.get();
 		if (initializations == null)
 			return;
@@ -3073,10 +3068,24 @@
 								pathSet.toArray(paths); // clone as the following will have a side effect
 								for (int j = 0; j < length2; j++) {
 									IPath path = paths[j];
+									synchronized(JavaModelManager.this.batchContainerInitializationsLock) {
+										if (containerIsSet(javaProject, path)) {
+											// another thread has concurrently initialized the container.
+											continue;
+										}
+									}
 									initializeContainer(javaProject, path);
 									IClasspathContainer container = containerBeingInitializedGet(javaProject, path);
 									if (container != null) {
-										containerPut(javaProject, path, container);
+										synchronized(JavaModelManager.this.batchContainerInitializationsLock) {
+											if (containerIsSet(javaProject, path)) {
+												// another thread has concurrently initialized the container.
+												containerBeingInitializedRemove(javaProject, path);
+												containerRemoveInitializationInProgress(javaProject, path);
+											} else {
+												containerPut(javaProject, path, container);
+											}
+										}
 									}
 								}
 								if (monitor != null)
@@ -3365,8 +3374,7 @@
 	}
 
 	public synchronized String intern(String s) {
-		// make sure to copy the string (so that it doesn't hold on the underlying char[] that might be much bigger than necessary)
-		return (String) this.stringSymbols.add(new String(s));
+		return (String) this.stringSymbols.add(s);
 
 		// Note1: String#intern() cannot be used as on some VMs this prevents the string from being garbage collected
 		// Note 2: Instead of using a WeakHashset, one could use a WeakHashMap with the following implementation
@@ -3828,7 +3836,7 @@
 		private IAccessRule loadAccessRule() throws IOException {
 			int problemId = loadInt();
 			IPath pattern = loadPath();
-			return getAccessRule(pattern, problemId);
+			return getAccessRuleForProblemId(pattern.toString().toCharArray(), problemId);
 		}
 
 		private IAccessRule[] loadAccessRules() throws IOException {
@@ -5645,8 +5653,20 @@
 	 * @return an access rule
 	 */
 	public IAccessRule getAccessRule(IPath filePattern, int kind) {
-		IAccessRule rule = new ClasspathAccessRule(filePattern, kind);
-		IAccessRule cachedRule = this.cache.accessRuleCache.get(rule);
+		ClasspathAccessRule rule = new ClasspathAccessRule(filePattern, kind);
+		return getFromCache(rule);
+	}
+
+	/**
+	 * Used only for loading rules from disk.
+	 */
+	public ClasspathAccessRule getAccessRuleForProblemId(char [] filePattern, int problemId) {
+		ClasspathAccessRule rule = new ClasspathAccessRule(filePattern, problemId);
+		return getFromCache(rule);
+	}
+
+	private ClasspathAccessRule getFromCache(ClasspathAccessRule rule) {
+		ClasspathAccessRule cachedRule = this.cache.accessRuleCache.get(rule);
 		if (cachedRule != null) {
 			return cachedRule;
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.java
index be0844f..d52ba72 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.java
index b5b416c..b8a5c01 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaModelStatus.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.java
index 8efd8c1..536d66b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -524,14 +527,8 @@
 	 */
 	private void computeExpandedClasspath(
 		ClasspathEntry referringEntry,
-		HashSet rootIDs,
-		ObjectVector accumulatedEntries, boolean excludeTestCode) throws JavaModelException {
-
-		String projectRootId = rootID();
-		if (rootIDs.contains(projectRootId)){
-			return; // break cycles if any
-		}
-		rootIDs.add(projectRootId);
+		HashMap<String, Boolean> rootIDs,
+		ArrayList<ClasspathEntry> accumulatedEntries, boolean excludeTestCode) throws JavaModelException {
 
 		IClasspathEntry[] resolvedClasspath = getResolvedClasspath();
 
@@ -544,28 +541,58 @@
 			}
 			if (isInitialProject || entry.isExported()){
 				String rootID = entry.rootID();
-				if (rootIDs.contains(rootID)) {
-					continue;
-				}
-				// combine restrictions along the project chain
-				ClasspathEntry combinedEntry = entry.combineWith(referringEntry);
-				accumulatedEntries.add(combinedEntry);
 
 				// recurse in project to get all its indirect exports (only consider exported entries from there on)
 				if (entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) {
+					boolean nestedWithoutTestCode = excludeTestCode || entry.isWithoutTestCode();
+					Boolean previousValue = rootIDs.get(rootID);
+					ClasspathEntry combinedEntry;
+					if (previousValue == Boolean.FALSE) {
+						continue; // already handled including test code
+					} else if (previousValue == Boolean.TRUE) {
+						// project was already handled, but without test code.
+						if (nestedWithoutTestCode) {
+							continue;
+						} else {
+							// find the existing entry and update it.
+							rootIDs.put(rootID, Boolean.FALSE);
+							for (int j = 0; j < accumulatedEntries.size(); j++) {
+								// it is unclear how oldEntry and combinedEntry could be merged.
+								// main code compilation should remain untouched as far as possible, 
+								// so take all settings from oldEntry and just remove WITHOUT_TEST_CODE
+								ClasspathEntry oldEntry = accumulatedEntries.get(j);
+								if (oldEntry.rootID().equals(rootID)) {
+									accumulatedEntries.set(j, oldEntry.withExtraAttributeRemoved(IClasspathAttribute.WITHOUT_TEST_CODE));
+									break;
+								}
+							}
+							// combine restrictions along the project chain
+							combinedEntry = entry.combineWith(referringEntry);
+						}
+					} else {
+						rootIDs.put(rootID, nestedWithoutTestCode);
+						// combine restrictions along the project chain
+						combinedEntry = entry.combineWith(referringEntry);
+						accumulatedEntries.add(combinedEntry);
+					}
 					IResource member = workspaceRoot.findMember(entry.getPath());
 					if (member != null && member.getType() == IResource.PROJECT){ // double check if bound to project (23977)
 						IProject projRsc = (IProject) member;
 						if (JavaProject.hasJavaNature(projRsc)) {
 							JavaProject javaProject = (JavaProject) JavaCore.create(projRsc);
-							javaProject.computeExpandedClasspath(
-								combinedEntry,
-								rootIDs,
-								accumulatedEntries, excludeTestCode || entry.isWithoutTestCode());
+								javaProject.computeExpandedClasspath(
+									combinedEntry,
+									rootIDs,
+									accumulatedEntries, nestedWithoutTestCode);
 						}
 					}
 				} else {
-					rootIDs.add(rootID);
+					if (!rootIDs.containsKey(rootID)) {
+						// combine restrictions along the project chain
+						ClasspathEntry combinedEntry = entry.combineWith(referringEntry);
+						accumulatedEntries.add(combinedEntry);
+						rootIDs.put(rootID, excludeTestCode); // value actually doesn't matter for non-projects
+					}
 				}
 			}
 		}
@@ -1918,11 +1945,13 @@
 	}
 	public IClasspathEntry[] getExpandedClasspath(boolean excludeTestCode)	throws JavaModelException {
 
-			ObjectVector accumulatedEntries = new ObjectVector();
-			computeExpandedClasspath(null, new HashSet(5), accumulatedEntries, excludeTestCode);
+			ArrayList<ClasspathEntry> accumulatedEntries = new ArrayList<>();
+			HashMap<String,Boolean> rootIDs = new HashMap<>(5);
+			rootIDs.put(this.rootID(), excludeTestCode);
+			computeExpandedClasspath(null, rootIDs, accumulatedEntries, excludeTestCode);
 
 			IClasspathEntry[] expandedPath = new IClasspathEntry[accumulatedEntries.size()];
-			accumulatedEntries.copyInto(expandedPath);
+			accumulatedEntries.toArray(expandedPath);
 
 			return expandedPath;
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java
index c2b068a..58076df 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavaProjectElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -20,6 +23,7 @@
 import org.aspectj.org.eclipse.jdt.core.IClasspathEntry;
 import org.aspectj.org.eclipse.jdt.core.ICompilationUnit;
 import org.aspectj.org.eclipse.jdt.core.IJavaElement;
+import org.aspectj.org.eclipse.jdt.core.IJavaProject;
 import org.aspectj.org.eclipse.jdt.core.IPackageFragmentRoot;
 import org.aspectj.org.eclipse.jdt.core.JavaCore;
 import org.aspectj.org.eclipse.jdt.core.JavaModelException;
@@ -202,6 +206,15 @@
 
 	ProjectCache getProjectCache(JavaProject project, boolean excludeTestCode) {
 		ProjectCache cache = excludeTestCode ? this.mainProjectCache : this.projectCache;
+		if (cache != null) {
+			for (IPackageFragmentRoot root : cache.allPkgFragmentRootsCache) {
+				IJavaProject rootProject = root.getJavaProject();
+				if (rootProject != this && !rootProject.exists()) {
+					cache = null; // force rebuilding
+					break;
+				}
+			}
+		}
 		if (cache == null) {
 			IPackageFragmentRoot[] roots;
 			Map<?, ?> reverseMap = new HashMap<>(3);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.java
index b1b4311..cb0179b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.java
index 13dd263..92f0c7c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JavadocContents.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -447,7 +450,7 @@
 					buffer.insert(0, '.');
 				}
 			}
-			typeQualifiedName = new String(buffer.toString());
+			typeQualifiedName = buffer.toString();
 		} else {
 			typeQualifiedName = this.type.getElementName();
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.java
index 33db3f8..cae69b2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/JrtPackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.java
index dbee8d8..ba0c124 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LRUCacheEnumerator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.java
index c550313..51f46cc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.java
index e3c428b..6d815b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.java
index 0c7d035..8a4090e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LambdaMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.java
index e92a8c4..2780715 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/LocalVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Member.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Member.java
index fbd1683..a3ad941 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Member.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Member.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.java
index f94d36f..0ac9fd4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.java
index 73ca53f..0b13a04 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MemberValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.java
index 924cc56..660ac7b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModelUpdater.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.java
index 43ff8a7..0e1f4a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModularClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Module.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Module.java
index d644d38..8f908a9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Module.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Module.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.java
index f6f5e90..99a9d6e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleDescriptionInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.java
index 75d24ca..8c235e9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.java
index 04d2c8c..78b5de0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModulePathContainerInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.java
index 3cb7b01..8e58f14 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleSourcePathManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.java
index f0854b6..77e30f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ModuleUpdater.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.java
index f0e9c17..4cedb6d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.java
index 66b348e..4831bf2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MovePackageFragmentRootOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.java
index 52a1a76..fbe8a58 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MoveResourceElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.java
index e698f15..d6ce1ed 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/MultiOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.java
index d41cda5..d534900 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NameLookup.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.java
index 4894776..0b75fcd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NamedMember.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.java
index b955040..136b856 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NonJavaResource.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.java
index 7953a46..63f5f19 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/NullBuffer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Openable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Openable.java
index 6288322..2a8d43d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Openable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Openable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.java
index 367dea4..761b358 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OpenableElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -85,7 +88,7 @@
 	}
 
 	public void setChildren(IJavaElement[] children) {
-		this.children = children;
+		this.children= (children.length > 0) ? children : JavaElement.NO_ELEMENTS;
 	}
 
 	public void setModule(IModuleDescription module) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.java
index f49d273..abd179b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/OverflowingLRUCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.java
index a438cdc..0ad8caf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.java
index cea2106..a3cc143 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -115,9 +118,13 @@
 		}
 	}
 
-	IJavaElement[] children = new IJavaElement[vChildren.size()];
-	vChildren.toArray(children);
-	info.setChildren(children);
+	if (!vChildren.isEmpty()) {
+		IJavaElement[] children = new IJavaElement[vChildren.size()];
+		vChildren.toArray(children);
+		info.setChildren(children);
+	} else {
+		info.setChildren(JavaElement.NO_ELEMENTS);
+	}
 	return true;
 }
 /**
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.java
index 0c6edc9..2564609 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.java
index 751c772..57c4f78 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRoot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -206,9 +209,13 @@
 //			if (module != null && module.exists()) {
 //				vChildren.add(new ClassFile(getPackageFragment(CharOperation.NO_STRINGS), String.valueOf(TypeConstants.MODULE_INFO_NAME)));
 //			}
-			IJavaElement[] children = new IJavaElement[vChildren.size()];
-			vChildren.toArray(children);
-			info.setChildren(children);
+			if (!vChildren.isEmpty()) {
+				IJavaElement[] children = new IJavaElement[vChildren.size()];
+				vChildren.toArray(children);
+				info.setChildren(children);
+			} else {
+				info.setChildren(JavaElement.NO_ELEMENTS);
+			}
 		}
 	} catch (JavaModelException e) {
 		//problem resolving children; structure remains unknown
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.java
index 31c5a01..1537afb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/PackageFragmentRootInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.java
index 834ff07..7076c01 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ProjectEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.java
index 5494d35..4b00084 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ReconcileWorkingCopyOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Region.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Region.java
index 2527b6d..9f0bccf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Region.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/Region.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.java
index 67c30a2..fc21486 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.java
index 910771c..9968cad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/RenameResourceElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.java
index ecbc1d7..f7f2c24 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.java
index db80ae9..a721b50 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.java
index 9ea922f..452473e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedBinaryType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.java
index d90eda5..592e1c1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedLambdaExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.java
index 4286826..063581e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.java
index 1e23dbd..547e820 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.java
index 31abc32..c6741c4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/ResolvedSourceType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.java
index ef1635c..61ac9ef 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.java
index 1e527fc..a32e4e6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SearchableEnvironmentRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.java
index ab02896..43cfa3e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SelectionRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.java
index 0a23035..d966ad8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetClasspathOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.java
index 46a8a15..0773b7c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetContainerOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.java
index 2919294..6757ed1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SetVariablesOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.java
index 510602d..eb4eafb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SimpleDelta.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.java
index 1c2150e..ed9d67f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SingleTypeRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.java
index 5a5345f..24d0a0c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SortElementsOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.java
index 2797a7c..5a1fbf9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceAnnotationMethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.java
index 8b35a6d..6b742d6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.java
index 69d3bb2..fed3708 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceConstructorWithChildrenInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceField.java
index e2a4834..3293380 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.java
index fcfff20..495cdf0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.java
index dc257c8..f0dc780 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceFieldWithChildrenInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.java
index bfb03f8..7d4cd29 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.java
index 1a711bb..2954794 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.java
index 253d9d1..1c944af 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.java
index 9175d54..4d05e45 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.java
index 2f66ec5..5861c7f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceMethodWithChildrenInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.java
index eaef1fe..b8f1f2d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceModule.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.java
index 84a85be..46b05a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.java
index a8900c5..4d49a7d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceRefElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceType.java
index 541cced..ba10cdc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -512,7 +515,7 @@
 	if (superclassName == null) {
 		return null;
 	}
-	return new String(Signature.createTypeSignature(superclassName, false));
+	return Signature.createTypeSignature(superclassName, false);
 }
 
 /**
@@ -538,7 +541,7 @@
 	}
 	String[] strings= new String[names.length];
 	for (int i= 0; i < names.length; i++) {
-		strings[i]= new String(Signature.createTypeSignature(names[i], false));
+		strings[i]= Signature.createTypeSignature(names[i], false);
 	}
 	return strings;
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.java
index 6d9972b..9d30c39 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/SourceTypeElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.java
index a863989..9cf6127 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.java
index 9355b1c..526d1c7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeParameterElementInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.java
index af0fdb8..1ce0598 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/TypeVector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.java
index 3f5bdac..e6b8965 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibrary.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.java
index b84cef3..3f05372 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.java
index 564b61c..1df023d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryClasspathContainerInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.java
index d40655e..e2ef57c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/UserLibraryManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.java
index 3d66661..c6726c0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/VerboseElementCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.java
index 982ec90..8457d0a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/XMLWriter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.java
index 01eecb3..305d33a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbortIncrementalBuildException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.java
index f631793..d952bfe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AbstractImageBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.java
index b2c6016..29d3b00 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/AdditionalTypeCollection.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.java
index c77bd75..dbe776c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BatchImageBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.java
index 277f999..1bb93bd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/BuildNotifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.java
index dcae32a..dc1cfd4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathDirectory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.java
index 48efde0..5c911f9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJMod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.java
index c389f1e..bdd575b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJar.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -93,6 +96,8 @@
 	String modInfo = null;
 	for (Enumeration e = this.zipFile.entries(); e.hasMoreElements(); ) {
 		String fileName = ((ZipEntry) e.nextElement()).getName();
+		if (fileName.startsWith("META-INF/")) //$NON-NLS-1$
+			continue;
 		if (modInfo == null) {
 			int folderEnd = fileName.lastIndexOf('/');
 			folderEnd += 1;
@@ -110,7 +115,17 @@
 	ZipFile file = null;
 	try {
 		file = new ZipFile(this.zipFilename);
-		ClassFileReader classfile = ClassFileReader.read(file, IModule.MODULE_INFO_CLASS); // FIXME: use jar cache
+		String releasePath = "META-INF/versions/" + this.compliance + '/' + IModule.MODULE_INFO_CLASS; //$NON-NLS-1$
+		ClassFileReader classfile = null;
+		try {
+			classfile = ClassFileReader.read(file, releasePath);
+		} catch (Exception e) {
+			e.printStackTrace();
+			// move on to the default
+		}
+		if (classfile == null) {
+			classfile = ClassFileReader.read(file, IModule.MODULE_INFO_CLASS); // FIXME: use jar cache
+		}
 		if (classfile != null) {
 			mod = classfile.getModuleDeclaration();
 		}
@@ -136,6 +151,8 @@
 private SimpleSet knownPackageNames;
 AccessRuleSet accessRuleSet;
 String externalAnnotationPath;
+// Meant for ClasspathMultiReleaseJar, not used in here
+String compliance;
 
 ClasspathJar(IFile resource, AccessRuleSet accessRuleSet, IPath externalAnnotationPath, boolean isOnModulePath) {
 	this.resource = resource;
@@ -228,6 +245,9 @@
 	if (this.accessRuleSet != jar.accessRuleSet)
 		if (this.accessRuleSet == null || !this.accessRuleSet.equals(jar.accessRuleSet))
 			return false;
+	if (!Util.equalOrNull(this.compliance, jar.compliance)) {
+		return false;
+	}
 	return this.zipFilename.equals(jar.zipFilename) 
 			&& lastModified() == jar.lastModified()
 			&& this.isOnModulePath == jar.isOnModulePath
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.java
index d5bacbe..f5e06a3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathJrt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -58,7 +61,7 @@
 private ZipFile annotationZipFile;
 String zipFilename; // keep for equals
 AccessRuleSet accessRuleSet;
-String compliance = null;
+String release = null;
 String releaseInHex = null;
 private Path releasePath = null;
 private String[] subReleases = null;
@@ -66,15 +69,15 @@
 
 static final Set<String> NO_LIMIT_MODULES = new HashSet<>();
 
-public ClasspathJrt(String zipFilename, AccessRuleSet accessRuleSet, IPath externalAnnotationPath, String compliance) {
+public ClasspathJrt(String zipFilename, AccessRuleSet accessRuleSet, IPath externalAnnotationPath, String release) {
 	this.zipFilename = zipFilename;
 	this.accessRuleSet = accessRuleSet;
 	if (externalAnnotationPath != null)
 		this.externalAnnotationPath = externalAnnotationPath.toString();
-	if (compliance != null && compliance.length() == 0) {
-		this.compliance = null;
+	if (release != null && release.length() == 0) {
+		this.release = null;
 	} else {
-		this.compliance = compliance;
+		this.release = release;
 	}
 	initialize();
 	loadModules(this);
@@ -172,11 +175,11 @@
 	}
 }
 public void initialize() {
-	if (this.compliance == null) {
+	if (this.release == null) {
 		return;
 	}
-	this.compliance = getReleaseOptionFromCompliance(this.compliance);
-	this.releaseInHex = Integer.toHexString(Integer.parseInt(this.compliance));
+	this.release = getReleaseOptionFromCompliance(this.release);
+	this.releaseInHex = Integer.toHexString(Integer.parseInt(this.release)).toUpperCase();
 	Path lib = Paths.get(this.zipFilename).getParent();
 	Path filePath = Paths.get(lib.toString(),  "ct.sym"); //$NON-NLS-1$
 	URI t = filePath.toUri();
@@ -194,16 +197,16 @@
 		try {
 			this.fs = FileSystems.newFileSystem(uri, env);
 		} catch (IOException e) {
-			this.compliance = null;
+			this.release = null;
 			return;
 		}
 	}
 	this.releasePath = this.fs.getPath("/"); //$NON-NLS-1$
 	if (!Files.exists(this.fs.getPath(this.releaseInHex))
 			|| Files.exists(this.fs.getPath(this.releaseInHex, "system-modules"))) { //$NON-NLS-1$
-		this.compliance = null;
+		this.release = null;
 	}
-	if (this.compliance != null) {
+	if (this.release != null) {
 		List<String> sub = new ArrayList<>();
 		try (DirectoryStream<java.nio.file.Path> stream = Files.newDirectoryStream(this.releasePath)) {
 			for (final java.nio.file.Path subdir: stream) {
@@ -262,6 +265,7 @@
 		}
 		this.annotationZipFile = null;
 	}
+	this.fs = null;
 }
 
 @Override
@@ -269,7 +273,7 @@
 	if (this == o) return true;
 	if (!(o instanceof ClasspathJrt)) return false;
 	ClasspathJrt jar = (ClasspathJrt) o;
-	if (!Util.equalOrNull(this.compliance, jar.compliance)) {
+	if (!Util.equalOrNull(this.release, jar.release)) {
 		return false;
 	}
 	if (this.accessRuleSet != jar.accessRuleSet)
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.java
index 047da76..ffe976b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -16,15 +19,18 @@
 import java.util.Set;
 import java.util.function.Consumer;
 import java.util.function.Predicate;
+import java.util.zip.ZipFile;
 
 import org.eclipse.core.resources.IContainer;
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.runtime.IPath;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRuleSet;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.IModule;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.IUpdatableModule;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.IUpdatableModule.UpdateKind;
+import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ModuleBinding;
 import org.aspectj.org.eclipse.jdt.internal.compiler.util.Util;
 
@@ -128,15 +134,15 @@
 										IPath annotationsPath,
 										boolean autoModule,
 										String compliance) {
-	return Util.isJrt(libraryPathname) ?
-			new ClasspathJrt(libraryPathname, accessRuleSet, annotationsPath, compliance) :
-				Util.archiveFormat(libraryPathname) == Util.JMOD_FILE ?
+	return Util.archiveFormat(libraryPathname) == Util.JMOD_FILE ?
 					new ClasspathJMod(libraryPathname, lastModified, accessRuleSet, annotationsPath) :
-			new ClasspathJar(libraryPathname, lastModified, accessRuleSet, annotationsPath, autoModule);
+						(compliance == null || (CompilerOptions.versionToJdkLevel(compliance) < ClassFileConstants.JDK9) ?
+			new ClasspathJar(libraryPathname, lastModified, accessRuleSet, annotationsPath, autoModule) :
+				new ClasspathMultiReleaseJar(libraryPathname, lastModified, accessRuleSet, annotationsPath, autoModule, compliance));
 
 }
-static ClasspathJrt forJrtSystem(String jdkHome, AccessRuleSet accessRuleSet, IPath annotationsPath, String release) {
-	return new ClasspathJrt(jdkHome, accessRuleSet, annotationsPath, release);
+static ClasspathJrt forJrtSystem(String jrtPath, AccessRuleSet accessRuleSet, IPath annotationsPath, String release) {
+	return new ClasspathJrt(jrtPath, accessRuleSet, annotationsPath, release);
 }
 
 public static ClasspathLocation forLibrary(String libraryPathname, AccessRuleSet accessRuleSet, IPath annotationsPath,
@@ -145,8 +151,15 @@
 }
 
 static ClasspathLocation forLibrary(IFile library, AccessRuleSet accessRuleSet, IPath annotationsPath,
-										boolean autoModule) {
-	return new ClasspathJar(library, accessRuleSet, annotationsPath, autoModule);
+										boolean autoModule, String compliance) {
+	return (CompilerOptions.versionToJdkLevel(compliance) < ClassFileConstants.JDK9) ?
+		new ClasspathJar(library, accessRuleSet, annotationsPath, autoModule) :
+					new ClasspathMultiReleaseJar(library, accessRuleSet, annotationsPath, autoModule, compliance);
+}
+public static ClasspathLocation forLibrary(ZipFile zipFile, AccessRuleSet accessRuleSet, IPath externalAnnotationPath, boolean isOnModulePath, String compliance) {
+	return (CompilerOptions.versionToJdkLevel(compliance) < ClassFileConstants.JDK9) ?
+			new ClasspathJar(zipFile, accessRuleSet, externalAnnotationPath, isOnModulePath) :
+				new ClasspathMultiReleaseJar(zipFile, accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
 }
 
 public abstract IPath getProjectRelativePath();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.java
index 966be5d..cfd6866 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -11,6 +14,7 @@
 package org.aspectj.org.eclipse.jdt.internal.core.builder;
 
 import org.eclipse.core.resources.*;
+import org.eclipse.core.runtime.CoreException;
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult;
 import org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration;
@@ -67,6 +71,35 @@
 			return Util.isExcluded(resource, this.inclusionPatterns, this.exclusionPatterns);
 	return false;
 }
+@Override
+String[] directoryList(String qualifiedPackageName) {
+	String[] dirList = (String[]) this.directoryCache.get(qualifiedPackageName);
+	if (dirList != null) return dirList;
+
+	try {
+		IResource container = this.binaryFolder.findMember(qualifiedPackageName); // this is a case-sensitive check
+		if (container instanceof IContainer) {
+			IResource[] members = ((IContainer) container).members();
+			dirList = new String[members.length];
+			int index = 0;
+			for (int i = 0, l = members.length; i < l; i++) {
+				IResource m = members[i];
+				String name = m.getName();
+				if (m.getType() == IResource.FILE && org.aspectj.org.eclipse.jdt.internal.compiler.util.Util.isClassFileName(name)) {
+					// add exclusion pattern check here if we want to hide .class files
+					dirList[index++] = name;
+				}
+			}
+			if (index < dirList.length)
+				System.arraycopy(dirList, 0, dirList = new String[index], 0, index);
+			this.directoryCache.put(qualifiedPackageName, dirList);
+			return dirList;
+		}
+	} catch(CoreException ignored) {
+		// ignore
+	}
+	return null;
+}
 
 @Override
 public String toString() {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.java
new file mode 100644
index 0000000..5a856bd
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ClasspathMultiReleaseJar.java
@@ -0,0 +1,269 @@
+package org.aspectj.org.eclipse.jdt.internal.core.builder;
+
+import java.io.IOException;
+import java.net.URI;
+import java.nio.file.FileSystemAlreadyExistsException;
+import java.nio.file.FileSystemNotFoundException;
+import java.nio.file.FileSystems;
+import java.nio.file.FileVisitResult;
+import java.nio.file.FileVisitor;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.nio.file.ProviderNotFoundException;
+import java.nio.file.attribute.BasicFileAttributes;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.function.Predicate;
+import java.util.zip.ZipFile;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IPath;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException;
+import org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationDecorator;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRuleSet;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.IBinaryType;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.IModule;
+import org.aspectj.org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer;
+import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
+import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.ExternalAnnotationStatus;
+import org.aspectj.org.eclipse.jdt.internal.compiler.util.SimpleSet;
+import org.aspectj.org.eclipse.jdt.internal.compiler.util.SuffixConstants;
+import org.aspectj.org.eclipse.jdt.internal.core.util.Util;
+
+public class ClasspathMultiReleaseJar extends ClasspathJar {
+	private java.nio.file.FileSystem fs;
+	Path releasePath;
+	Path rootPath;
+	Path[] supportedVersions;
+
+	ClasspathMultiReleaseJar(IFile resource, AccessRuleSet accessRuleSet, IPath externalAnnotationPath,
+			boolean isOnModulePath, String compliance) {
+		super(resource, accessRuleSet, externalAnnotationPath, isOnModulePath);
+		this.compliance = compliance;
+		initializeVersions(this);
+	}
+
+	ClasspathMultiReleaseJar(String zipFilename, long lastModified, AccessRuleSet accessRuleSet,
+			IPath externalAnnotationPath, boolean isOnModulePath, String compliance) {
+		super(zipFilename, lastModified, accessRuleSet, externalAnnotationPath, isOnModulePath);
+		this.compliance = compliance;
+		initializeVersions(this);
+	}
+
+	public ClasspathMultiReleaseJar(ZipFile zipFile, AccessRuleSet accessRuleSet, IPath externalAnnotationPath,
+			boolean isOnModulePath, String compliance) {
+		this(zipFile.getName(), accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
+		this.zipFile = zipFile;
+		this.closeZipFileAtEnd = true;
+	}
+
+	public ClasspathMultiReleaseJar(String fileName, AccessRuleSet accessRuleSet, IPath externalAnnotationPath,
+			boolean isOnModulePath, String compliance) {
+		this(fileName, 0, accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
+		if (externalAnnotationPath != null) {
+			this.externalAnnotationPath = externalAnnotationPath.toString();
+		}
+	}
+
+	@Override
+	IModule initializeModule() {
+		IModule mod = null;
+		try (ZipFile file = new ZipFile(this.zipFilename)){
+			ClassFileReader classfile = null;
+			try {
+				for (Path path : this.supportedVersions) {
+					classfile = ClassFileReader.read(file, path.toString() + '/' + IModule.MODULE_INFO_CLASS);
+					if (classfile != null) {
+						break;
+					}
+				}
+
+			} catch (Exception e) {
+				Util.log(e, "Failed to initialize module for: " + this);  //$NON-NLS-1$
+				// move on to the default
+			}
+			if (classfile == null) {
+				classfile = ClassFileReader.read(file, IModule.MODULE_INFO_CLASS); // FIXME: use jar cache
+			}
+			if (classfile != null) {
+				mod = classfile.getModuleDeclaration();
+			}
+		} catch (ClassFormatException | IOException e) {
+			Util.log(e, "Failed to initialize module for: " + this);  //$NON-NLS-1$
+		}
+		return mod;
+	}
+
+	private static synchronized void initializeVersions(ClasspathMultiReleaseJar jar) {
+		Path filePath = Paths.get(jar.zipFilename);
+		try {
+		if (Files.exists(filePath)) {
+			URI uri = URI.create("jar:" + filePath.toUri()); //$NON-NLS-1$
+			try {
+				try {
+					jar.fs = FileSystems.getFileSystem(uri);
+				} catch (FileSystemNotFoundException e) {
+					// move on
+				}
+				if (jar.fs == null) {
+					jar.fs = FileSystems.newFileSystem(uri, new HashMap<>());
+				}
+			} catch (IllegalArgumentException | FileSystemNotFoundException | ProviderNotFoundException
+					| FileSystemAlreadyExistsException | IOException | SecurityException e) {
+				Util.log(e, "Failed to initialize versions for: " + jar);  //$NON-NLS-1$
+				jar.supportedVersions = new Path[0];
+			}
+			if (jar.fs == null) {
+				return;
+			}
+			jar.rootPath = jar.fs.getPath("/"); //$NON-NLS-1$
+			int earliestJavaVersion = ClassFileConstants.MAJOR_VERSION_9;
+				long latestJDK = CompilerOptions.versionToJdkLevel(jar.compliance);
+			int latestJavaVer = (int) (latestJDK >> 16);
+			List<Path> versions = new ArrayList<>();
+			for (int i = latestJavaVer; i >= earliestJavaVersion; i--) {
+				Path path = jar.fs.getPath("/", "META-INF", "versions", "" + (i - 44)); //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+				if (Files.exists(path)) {
+					versions.add(jar.rootPath.relativize(path));
+				}
+			}
+			jar.supportedVersions = versions.toArray(new Path[versions.size()]);
+			}
+		} finally {
+			if ((jar.supportedVersions == null || jar.supportedVersions.length <= 0) 
+					&& (jar.fs != null && jar.fs.isOpen())) {
+				try {
+					jar.fs.close();
+				} catch (IOException e) {
+					// ignore
+				}
+			}
+		}
+	}
+
+	@Override
+	protected String readJarContent(final SimpleSet packageSet) {
+		String[] modInfo = new String[1];
+		modInfo[0] = super.readJarContent(packageSet);
+		try {
+			for (Path path : this.supportedVersions) {
+				Path relativePath = this.rootPath.resolve(path);
+				Files.walkFileTree(path, new FileVisitor<Path>() {
+					@Override
+					public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs)
+							throws IOException {
+						return FileVisitResult.CONTINUE;
+					}
+
+					@Override
+					public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
+							throws IOException {
+						Path p = relativePath.relativize(file);
+						addToPackageSet(packageSet, p.toString(), false);
+						if (modInfo[0] == null) {
+							Path fileName = p.getFileName();
+							if (fileName != null && fileName.toString().equalsIgnoreCase(IModule.MODULE_INFO_CLASS)) {
+								modInfo[0] = relativePath.relativize(file).toString();
+							}
+						}
+						return FileVisitResult.CONTINUE;
+					}
+
+					@Override
+					public FileVisitResult visitFileFailed(Path file, IOException exc)
+							throws IOException {
+						return FileVisitResult.CONTINUE;
+					}
+
+					@Override
+					public FileVisitResult postVisitDirectory(Path dir, IOException exc)
+							throws IOException {
+						return FileVisitResult.CONTINUE;
+					}
+				});
+			}
+		} catch (Exception e) {
+			Util.log(e, "Failed to read jar content for: " + packageSet + " in: " + this);  //$NON-NLS-1$ //$NON-NLS-2$
+		}
+		return modInfo[0];
+	}
+
+	@Override
+	public NameEnvironmentAnswer findClass(String binaryFileName, String qualifiedPackageName, String moduleName,
+			String qualifiedBinaryFileName, boolean asBinaryOnly, Predicate<String> moduleNameFilter) {
+		if (!isPackage(qualifiedPackageName, moduleName)) {
+			return null; // most common case
+		}
+		for (Path path : this.supportedVersions) {
+			Path relativePath = this.rootPath.resolve(path);
+			Path p = null;
+			try {
+				p = relativePath.resolve(qualifiedPackageName).resolve(binaryFileName);
+				if (!Files.exists(p)) {
+					continue;
+				}
+				byte[] content = Files.readAllBytes(p);
+				IBinaryType reader = null;
+				if (content != null) {
+					reader = new ClassFileReader(content, qualifiedBinaryFileName.toCharArray());
+				}
+				if (reader != null) {
+					char[] modName = this.module == null ? null : this.module.name();
+					if (reader instanceof ClassFileReader) {
+						ClassFileReader classReader = (ClassFileReader) reader;
+						if (classReader.moduleName == null) {
+							classReader.moduleName = modName;
+						} else {
+							modName = classReader.moduleName;
+						}
+					}
+					String fileNameWithoutExtension = qualifiedBinaryFileName.substring(0,
+							qualifiedBinaryFileName.length() - SuffixConstants.SUFFIX_CLASS.length);
+					if (this.externalAnnotationPath != null) {
+						try {
+							if (this.annotationZipFile == null) {
+								this.annotationZipFile = ExternalAnnotationDecorator
+										.getAnnotationZipFile(this.externalAnnotationPath, null);
+							}
+
+							reader = ExternalAnnotationDecorator.create(reader, this.externalAnnotationPath,
+									fileNameWithoutExtension, this.annotationZipFile);
+						} catch (IOException e) {
+							// don't let error on annotations fail class reading
+						}
+						if (reader.getExternalAnnotationStatus() == ExternalAnnotationStatus.NOT_EEA_CONFIGURED) {
+							// ensure a reader that answers NO_EEA_FILE
+							reader = new ExternalAnnotationDecorator(reader, null);
+						}
+					}
+					if (this.accessRuleSet == null) {
+						return new NameEnvironmentAnswer(reader, null, modName);
+					}
+					return new NameEnvironmentAnswer(reader,
+							this.accessRuleSet.getViolatedRestriction(fileNameWithoutExtension.toCharArray()), modName);
+				}
+			} catch (IOException | ClassFormatException e) {
+				Util.log(e, "Failed to find class for: " + p + " in: " + this);  //$NON-NLS-1$ //$NON-NLS-2$
+				// treat as if class file is missing
+			}
+		}
+		return super.findClass(binaryFileName, qualifiedPackageName, moduleName, qualifiedBinaryFileName, asBinaryOnly,
+				moduleNameFilter);
+	}
+
+	@Override
+	public void cleanup() {
+		if (this.fs != null && this.fs.isOpen()) {
+			try {
+				this.fs.close();
+			} catch (IOException e) {
+				// probably already closed, race condition may be?
+			}
+		}
+		super.cleanup();
+	}
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.java
index 69dba18..4bfc49f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/CompilationParticipantResult.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    IBM - rewrote spec
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.java
index bdb3b3d..5c57e59 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ICompilationUnitLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2009 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *    wharley@bea.com - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.java
index d025edd..e0d6ca7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ImageBuilderInternalException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.java
index 80786d6..fdf9b83 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/IncrementalImageBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.java
index d6aab58..1ae3c3d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/JavaBuilder.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -14,7 +17,8 @@
 
 import org.eclipse.core.resources.*;
 import org.eclipse.core.runtime.*;
-
+import org.eclipse.core.runtime.jobs.ISchedulingRule;
+import org.eclipse.core.runtime.preferences.InstanceScope;
 import org.aspectj.org.eclipse.jdt.core.*;
 import org.aspectj.org.eclipse.jdt.core.compiler.*;
 import org.aspectj.org.eclipse.jdt.internal.compiler.util.SimpleLookupTable;
@@ -28,6 +32,7 @@
 @SuppressWarnings({"rawtypes", "unchecked"})
 public class JavaBuilder extends IncrementalProjectBuilder {
 
+public static final String PREF_NULL_SCHEDULING_RULE = "useNullSchedulingRule"; //$NON-NLS-1$
 IProject currentProject;
 JavaProject javaProject;
 IWorkspaceRoot workspaceRoot;
@@ -820,4 +825,12 @@
 		? "JavaBuilder for unknown project" //$NON-NLS-1$
 		: "JavaBuilder for " + this.currentProject.getName(); //$NON-NLS-1$
 }
+
+	@Override
+	public ISchedulingRule getRule(int kind, Map<String, String> args) {
+		if (InstanceScope.INSTANCE.getNode(JavaCore.PLUGIN_ID).getBoolean(PREF_NULL_SCHEDULING_RULE, false)) {
+			return null;
+		}
+		return super.getRule(kind, args);
+	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.java
index d0ab3fd..af4e450 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/MissingSourceFileException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.java
index 907455d..ee7a953 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.java
index a39b0b9..f5b67b7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.java
index 1f460c0..3f35bcd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ModulePathEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.java
index 1e23eaf..7fd1772 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -268,7 +271,7 @@
 							&& JavaCore.IGNORE.equals(javaProject.getOption(JavaCore.COMPILER_PB_DISCOURAGED_REFERENCE, true)))
 								? null
 								: entry.getAccessRuleSet();
-						bLocation = ClasspathLocation.forLibrary((IFile) resource, accessRuleSet, externalAnnotationPath, isOnModulePath);
+						bLocation = ClasspathLocation.forLibrary((IFile) resource, accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
 					} else if (resource instanceof IContainer) {
 						AccessRuleSet accessRuleSet =
 							(JavaCore.IGNORE.equals(javaProject.getOption(JavaCore.COMPILER_PB_FORBIDDEN_REFERENCE, true))
@@ -302,10 +305,14 @@
 							&& JavaCore.IGNORE.equals(javaProject.getOption(JavaCore.COMPILER_PB_DISCOURAGED_REFERENCE, true)))
 								? null
 								: entry.getAccessRuleSet();
-					if (JavaCore.DISABLED.equals(javaProject.getOption(JavaCore.COMPILER_RELEASE, true))) {
-						compliance = null;
+					String release = JavaCore.DISABLED.equals(javaProject.getOption(JavaCore.COMPILER_RELEASE, true)) ? null : compliance;
+					ClasspathLocation bLocation = null;
+					String libPath = path.toOSString();
+					if (Util.isJrt(libPath)) {
+						bLocation = ClasspathLocation.forJrtSystem(path.toOSString(), accessRuleSet, externalAnnotationPath, release);
+					} else {
+						bLocation = ClasspathLocation.forLibrary(path.toOSString(), accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
 					}
-					ClasspathLocation bLocation = ClasspathLocation.forLibrary(path.toOSString(), accessRuleSet, externalAnnotationPath, isOnModulePath, compliance);
 					bLocations.add(bLocation);
 					if (moduleEntries != null) {
 						Set<String> libraryLimitModules = (limitModules == null && projectModule != null) ? ClasspathJrt.NO_LIMIT_MODULES : limitModules;
@@ -586,7 +593,8 @@
 		default:
 			if (this.modulePathEntries != null) {
 				names = CharOperation.NO_CHAR_CHAR;
-				for (IModulePathEntry modulePathEntry : this.modulePathEntries.values()) {
+				Collection<IModulePathEntry> entries = new HashSet<>(this.modulePathEntries.values());
+				for (IModulePathEntry modulePathEntry : entries) {
 					char[][] declaringModules = modulePathEntry.getModulesDeclaringPackage(pkgName, modName);
 					if (declaringModules != null)
 						names = CharOperation.arrayConcat(names, declaringModules);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.java
index 9e801e7..a5d7add 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/NameSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.java
index a61ac3f..783c480 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ProblemFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.java
index 605cf2f..a1fd0be 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/QualifiedNameSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.java
index c3b42a7..6449593 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/ReferenceCollection.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.java
index 6f969d1..73ff388 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/SourceFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/State.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/State.java
index 241fdfe..bb96920 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/State.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/State.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -15,7 +18,6 @@
 
 import org.eclipse.core.resources.*;
 import org.eclipse.core.runtime.*;
-import org.aspectj.org.eclipse.jdt.core.JavaCore;
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.AccessRuleSet;
 import org.aspectj.org.eclipse.jdt.internal.compiler.env.IUpdatableModule;
@@ -54,7 +56,7 @@
 private StringSet structurallyChangedTypes;
 public static int MaxStructurallyChangedTypes = 100; // keep track of ? structurally changed types, otherwise consider all to be changed
 
-public static final byte VERSION = 0x0020;
+public static final byte VERSION = 0x0021;
 
 static final byte SOURCE_FOLDER = 1;
 static final byte BINARY_FOLDER = 2;
@@ -282,13 +284,16 @@
 				break;
 			case EXTERNAL_JAR :
 				String jarPath = in.readUTF();
-				boolean jrt = Util.isJrt(jarPath);
-				newState.binaryLocations[i] = ClasspathLocation.forLibrary(jarPath, in.readLong(),
-							readRestriction(in), new Path(in.readUTF()), jrt ? false : in.readBoolean(), jrt ? in.readUTF() : ""); //$NON-NLS-1$
+				if (Util.isJrt(jarPath)) {
+					newState.binaryLocations[i] = ClasspathLocation.forJrtSystem(jarPath, readRestriction(in), new Path(in.readUTF()), in.readUTF());
+				} else {
+					newState.binaryLocations[i] = ClasspathLocation.forLibrary(jarPath, in.readLong(),
+							readRestriction(in), new Path(in.readUTF()), in.readBoolean(), in.readUTF());
+				}
 				break;
 			case INTERNAL_JAR :
 					newState.binaryLocations[i] = ClasspathLocation.forLibrary(root.getFile(new Path(in.readUTF())),
-							readRestriction(in), new Path(in.readUTF()), in.readBoolean());
+							readRestriction(in), new Path(in.readUTF()), in.readBoolean(), in.readUTF());
 					break;
 		}
 		ClasspathLocation loc = newState.binaryLocations[i];
@@ -356,13 +361,16 @@
 				break;
 			case EXTERNAL_JAR :
 				String jarPath = in.readUTF();
-				boolean jrt = Util.isJrt(jarPath);
-				newState.testBinaryLocations[i] = ClasspathLocation.forLibrary(jarPath, in.readLong(),
-							readRestriction(in), new Path(in.readUTF()), jrt ? false : in.readBoolean(), jrt ? in.readUTF() : ""); //$NON-NLS-1$
+				if (Util.isJrt(jarPath)) {
+					newState.testBinaryLocations[i] = ClasspathLocation.forJrtSystem(jarPath, readRestriction(in), new Path(in.readUTF()), in.readUTF());
+				} else {
+						newState.testBinaryLocations[i] = ClasspathLocation.forLibrary(jarPath, in.readLong(),
+								readRestriction(in), new Path(in.readUTF()), in.readBoolean(), in.readUTF());
+				}
 				break;
 			case INTERNAL_JAR :
 					newState.testBinaryLocations[i] = ClasspathLocation.forLibrary(root.getFile(new Path(in.readUTF())),
-							readRestriction(in), new Path(in.readUTF()), in.readBoolean());
+							readRestriction(in), new Path(in.readUTF()), in.readBoolean(), in.readUTF());
 					break;
 		}
 	}
@@ -448,12 +456,12 @@
 	int length = in.readInt();
 	if (length == 0) return null; // no restriction specified
 	AccessRule[] accessRules = new AccessRule[length];
+	JavaModelManager manager = JavaModelManager.getJavaModelManager();
 	for (int i = 0; i < length; i++) {
 		char[] pattern = readName(in);
 		int problemId = in.readInt();
-		accessRules[i] = (AccessRule) JavaCore.newAccessRule(new Path(new String(pattern)), problemId);
+		accessRules[i] = manager.getAccessRuleForProblemId(pattern,problemId);
 	}
-	JavaModelManager manager = JavaModelManager.getJavaModelManager();
 	return new AccessRuleSet(accessRules, in.readByte(), manager.intern(in.readUTF()));
 }
 
@@ -558,14 +566,15 @@
 			writeRestriction(jar.accessRuleSet, out);
 			out.writeUTF(jar.externalAnnotationPath != null ? jar.externalAnnotationPath : ""); //$NON-NLS-1$
 			out.writeBoolean(jar.isOnModulePath);
+			out.writeUTF(jar.compliance == null ? "" : jar.compliance); //$NON-NLS-1$
+			
 		} else {
 			ClasspathJrt jrt = (ClasspathJrt) c;
 			out.writeByte(EXTERNAL_JAR);
 			out.writeUTF(jrt.zipFilename);
-			out.writeLong(-1);
 			writeRestriction(jrt.accessRuleSet, out);
 			out.writeUTF(jrt.externalAnnotationPath != null ? jrt.externalAnnotationPath : ""); //$NON-NLS-1$
-			out.writeUTF(jrt.compliance != null ? jrt.compliance : ""); //$NON-NLS-1$
+			out.writeUTF(jrt.release != null ? jrt.release : ""); //$NON-NLS-1$
 		}
 		char[] patchName = c.patchModuleName == null ? CharOperation.NO_CHAR : c.patchModuleName.toCharArray();
 		writeName(patchName, out);
@@ -670,14 +679,14 @@
 				writeRestriction(jar.accessRuleSet, out);
 				out.writeUTF(jar.externalAnnotationPath != null ? jar.externalAnnotationPath : ""); //$NON-NLS-1$
 				out.writeBoolean(jar.isOnModulePath);
+				out.writeUTF(jar.compliance != null ? jar.compliance : ""); //$NON-NLS-1$
 			} else {
 				ClasspathJrt jrt = (ClasspathJrt) c;
 				out.writeByte(EXTERNAL_JAR);
 				out.writeUTF(jrt.zipFilename);
-				out.writeLong(-1);
 				writeRestriction(jrt.accessRuleSet, out);
 				out.writeUTF(jrt.externalAnnotationPath != null ? jrt.externalAnnotationPath : ""); //$NON-NLS-1$
-				out.writeUTF(jrt.compliance != null ? jrt.compliance : ""); //$NON-NLS-1$
+				out.writeUTF(jrt.release != null ? jrt.release : ""); //$NON-NLS-1$
 			}
 		}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.java
index 6858b1a..63c41d7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/StringSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.java
index 45b6d03..5f50b78 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/builder/WorkQueue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.java
index ee6f357..0bc00ec 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/NaiveASTFlattener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.java
index 2e23218..da3f1c3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/SourceRangeVerifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java
index 44c5835..0c9220c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java
@@ -1,10 +1,13 @@
 // AspectJ
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.java
index 64e1495..7daa022 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFlattener.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -108,8 +111,7 @@
 	 * @return the serialized
 	 */
 	public String getResult() {
-		// convert to a string, but lose any extra space in the string buffer by copying
-		return new String(this.result.toString());
+		return this.result.toString();
 	}
 
 	/**
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.java
index 8aa603e..cfba74c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.java
index ae76e87..a2c81f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineCommentEndOffsets.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.java
index 179f0b5..367dc36 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/LineInformation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.java
index c6a94d9..953eb4f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/ListRewriteEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.java
index c154888..e9c45a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeInfoStore.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.java
index 75d08db..3c7c78c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/NodeRewriteEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.java
index fc262e4..4e375d8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.java
index 557af09..804bc42 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/RewriteEventStore.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.java
index 1f50ef0..3b63d4e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/SourceModifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.java
index 629e48d..31ad158 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TokenScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.java
index a1d4bad..b73594e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/TrackedNodePosition.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.java
index 4979429..c28734f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictIdentifier.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.java
index 654b7cb..ef59bb4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ConflictingSimpleNameFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.java
index 7b877df..61ada9b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportAdder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.java
index 4c650cb..3415058 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.java
index 6fad5b7..1a9f127 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.java
index 572c899..86d145d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportDeclarationWriter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.java
index c925a73..27f1bb7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEditor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.java
index 59ac4af..0f3340c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.java
index 0f15f1d..10ef8f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportGroupComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.java
index 42fbd19..a6c6dcd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportName.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.java
index 934171d..463eb54 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteAnalyzer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013, 2014, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *		IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.java
index 0ba0279..9652b1e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportRewriteConfiguration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.java
index c8e6043..0dea4cf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ImportsDelta.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.java
index 12d52b7..1f4c306 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/NewImportEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.java
index ba4b1aa..454dac6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandComputer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.java
index 28fe473..ed67ca1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OnDemandReduction.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.java
index 8be5a60..276f5ff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OrderPreservingImportAdder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.java
index cb7e194..4e875c8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/OriginalImportEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.java
index 3cd0d2f..0495c65 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageAndContainingTypeImportComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.java
index de7d5cf..4a3eeef 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/PackageImportComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.java
index 92626d5..726626e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RemovedImportCommentReassigner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.java
index 840cdb9..3f52112 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/ReorderingImportAdder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.java
index b58e041..66b0a35 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/RewriteSite.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.java
index ee49aee..c30e2ba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/StaticConflictingSimpleNameFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.java
index ab5c479..5e12e62 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/dom/rewrite/imports/TypeConflictingSimpleNameFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 Google Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     John Glassmyer <jogl@google.com> - import group sorting is broken - https://bugs.eclipse.org/430303
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.java
index 9b617ef..e6dae87 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/EvaluationContextWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.java
index a0e92df..8d8e3bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/GlobalVariableWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.java
index 14b9fd9..f49db00 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/eval/RequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.java
index ae5e89e..1478ef9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/BindingMap.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.java
index dc278df..4d3a963 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/ChangeCollector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.java
index 6f890ef..d9aa809 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.java
index b900c41..b3390f0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.java
index c7be1e1..d48dfa5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyResolver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -78,6 +81,7 @@
 
 	private int typeIndex;
 	private IGenericType[] typeModels;
+	private Parser basicParser;
 
 	private static final CompilationUnitDeclaration FakeUnit;
 	static {
@@ -126,11 +130,31 @@
  */
 @Override
 public void accept(ICompilationUnit sourceUnit, AccessRestriction accessRestriction) {
-	//System.out.println("Cannot accept compilation units inside the HierarchyResolver.");
-	this.lookupEnvironment.problemReporter.abortDueToInternalError(
-		new StringBuffer(Messages.accept_cannot)
-			.append(sourceUnit.getFileName())
-			.toString());
+	if (CharOperation.equals(TypeConstants.MODULE_INFO_NAME, sourceUnit.getMainTypeName())) {
+		// module is needed for resolving, so parse and build it now:
+		CompilationResult unitResult = new CompilationResult(sourceUnit, 1, 1, this.options.maxProblemsPerUnit);
+		CompilationUnitDeclaration parsedUnit = basicParser().dietParse(sourceUnit, unitResult);
+		this.lookupEnvironment.buildTypeBindings(parsedUnit, accessRestriction);
+		this.lookupEnvironment.completeTypeBindings(parsedUnit, true); // work done inside checkAndSetImports() 
+	} else {
+		//System.out.println("Cannot accept compilation units inside the HierarchyResolver.");
+		this.lookupEnvironment.problemReporter.abortDueToInternalError(
+			new StringBuffer(Messages.accept_cannot)
+				.append(sourceUnit.getFileName())
+				.toString());
+	}
+}
+private Parser basicParser() {
+	if (this.basicParser == null) {
+		ProblemReporter problemReporter =
+			new ProblemReporter(
+				DefaultErrorHandlingPolicies.proceedWithAllProblems(),
+				this.options,
+				new DefaultProblemFactory());
+		this.basicParser = new Parser(problemReporter, false);
+		this.basicParser.reportOnlyOneSyntaxError = true;
+	}
+	return this.basicParser;
 }
 
 /**
@@ -163,12 +187,15 @@
 	// build bindings
 	if (unit != null) {
 		try {
-			this.lookupEnvironment.buildTypeBindings(unit, accessRestriction);
+			LookupEnvironment environment = packageBinding.environment;
+			if (environment == null)
+				environment = this.lookupEnvironment;
+			environment.buildTypeBindings(unit, accessRestriction);
 
 			org.aspectj.org.eclipse.jdt.core.ICompilationUnit cu = ((SourceTypeElementInfo)sourceType).getHandle().getCompilationUnit();
 			rememberAllTypes(unit, cu, false);
 
-			this.lookupEnvironment.completeTypeBindings(unit, true/*build constructor only*/);
+			environment.completeTypeBindings(unit, true/*build constructor only*/);
 		} catch (AbortCompilation e) {
 			// missing 'java.lang' package: ignore
 		}
@@ -722,7 +749,7 @@
 					// We would have got all the necessary local types by now and hence there is no further need 
 					// to parse the method bodies. Parser.getMethodBodies, which is called latter in this function, 
 					// will not parse the method statements if ASTNode.HasAllMethodBodies is set. 
-					if (containsLocalType) 	parsedUnit.bits |= ASTNode.HasAllMethodBodies;
+					if (containsLocalType && parsedUnit != null) parsedUnit.bits |= ASTNode.HasAllMethodBodies;
 				} else {
 					// create parsed unit from file
 					IFile file = (IFile) cu.getResource();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.java
index 82f7d15..74d2467 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/HierarchyType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.java
index e8c06a3..04e7b2d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/IndexBasedHierarchyBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -317,6 +320,7 @@
 		IJavaProject currentProject = null;
 		for (int i = 0; i < length; i++) {
 			loopMonitor.setWorkRemaining(length - i + 1);
+			IJavaProject nextProject = null;
 			try {
 				String resourcePath = allPotentialSubTypes[i];
 
@@ -340,15 +344,19 @@
 					currentProject = project;
 					potentialSubtypes = new ArrayList(5);
 				} else if (!currentProject.equals(project)) {
+					nextProject = project;
 					// build current project
 					buildForProject((JavaProject)currentProject, potentialSubtypes, workingCopies, localTypes, loopMonitor.split(1));
-					currentProject = project;
 					potentialSubtypes = new ArrayList(5);
 				}
 
 				potentialSubtypes.add(handle);
 			} catch (JavaModelException e) {
 				continue;
+			} finally {
+				if (nextProject != null) {
+					currentProject = nextProject;
+				}
 			}
 		}
 
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.java
index e406bf3..e8e1c54 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedHierarchyBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.java
index 42eea89..c886ee4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/RegionBasedTypeHierarchy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.java
index c7afb7b..28c268a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/hierarchy/TypeHierarchy.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.java
index a61f615..f572e09 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/DiskIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.java
index 44ace19..3b2c9ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/EntryResult.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.java
index 56f8763..e4c32d8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/FileIndexLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/Index.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/Index.java
index 4f512f0..d2f07c9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/Index.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/Index.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -11,6 +14,7 @@
 package org.aspectj.org.eclipse.jdt.internal.core.index;
 
 import java.io.*;
+import java.util.regex.Pattern;
 
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.core.search.*;
@@ -63,6 +67,9 @@
 			return patternLength == wordLength && CharOperation.equals(pattern, word, false);
 		case SearchPattern.R_PREFIX_MATCH :
 			return patternLength <= wordLength && CharOperation.prefixEquals(pattern, word, false);
+		case SearchPattern.R_REGEXP_MATCH :
+			Pattern regexPattern = Pattern.compile(new String(pattern));
+			return regexPattern.matcher(new String(word)).matches();
 		case SearchPattern.R_PATTERN_MATCH :
 			return CharOperation.match(pattern, word, false);
 		case SearchPattern.R_CAMELCASE_MATCH:
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.java
index 8afb58f..00e31f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/IndexLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.java
index c339d9c..d8a2736 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/JarIndexLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.java
index 6f9f140..28438db 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/index/MemoryIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.java
index 703e8c3..78520ba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/AbstractDOMBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.java
index 365f879..e864c62 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/CompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.java
index 5a0c3f5..894468a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.java
index b5199b6..4b5f785 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.java
index a7bddd1..90d0d6b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.java
index a9fb59a..86f2077 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMImport.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.java
index 04130cf..f2c0fe7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMInitializer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.java
index 9571113..91971a7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMember.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.java
index bac821a..5a6064d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.java
index 56b98c4..5e9c278 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMNode.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.java
index 54fe3b0..22f26d5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMPackage.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.java
index b9f8824..f1b6bd9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/DOMType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.java
index e81d936..a290a6f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/ILineStartFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.java
index 54e95bb..1c612a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SiblingEnumeration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.java
index f1809f6..3d1c07c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/jdom/SimpleDOMBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.java
index 0a5100f..9605f84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/AbstractTypeFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.java
index f877403..963622d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/DatabaseRef.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.java
index 246384c..eac7e61 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IDestructable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.java
index 5464587..06369f6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/INdStruct.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.java
index ec098d1..958590d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IReader.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.java
index 6672ee0..be3d9ac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/ITypeFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.java
index ccc5fb4..6152e34 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/IndexExceptionBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.java
index c1a15b8..3fbd722 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/LongArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.java
index f0ca608..4eecd65 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Nd.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.java
index ddf35cd..ebc9d0d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdLinkedList.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.java
index e8a23fd..78781e5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNode.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.java
index 810b4e5..0368b0b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdNodeTypeRegistry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.java
index 3974b6d..1eddeae 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdRawLinkedList.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.java
index 8ed7dd9..8dcb313 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/NdStruct.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.java
index 264803c..55e0fd8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Package.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.java
index 0a20f78..9f242d1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/Pointer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
   * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.java
index 7a564e1..eedf16a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/PrimitiveTypes.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.java
index 3a8f522..6ea0ab1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/RawGrowableArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.java
index 4cea1f7..f8867b9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/StreamHasher.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2010, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  * 	   Sergey Prigogin (Google) - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.java
index bc25272..31b9c40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/BTree.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.java
index 728f467..bfa247e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Chunk.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.java
index df8aa91..bf10ece 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2016 Wind River Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Markus Schorn - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.java
index 13804bb..353437b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ChunkWriter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.java
index e611fb6..a357fd5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBProperties.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2016 Symbian Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Andrew Ferguson (Symbian) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.java
index c3f64a8..d0358a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/DBStatus.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.java
index ddd220b..fc03bd0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Database.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.java
index ea8e44e..db25c10 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/EmptyString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.java
index 5a19301..dc57c3d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeComparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.java
index bd537cc..8353748 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IBTreeVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.java
index 0ca806f..4ab7b5e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.java
index bf9dce5..146a4ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/IndexException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.java
index 4f74c49..a0c443e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/LongString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.java
index c6a42fd..e72ece0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/MemoryStats.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.java
index 17c1cc2..4c12666 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ModificationLog.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.java
index af34f5e..b30837c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/NdStringSet.java
@@ -1,9 +1,12 @@
 /*
  * Copyright (c) 2013, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Andrew Eidsness - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.java
index dffa452..2b7a798 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/Package.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.java
index ea089d6..1082216 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/RelatedAddress.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.java
index 276417c..3a6f02b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/db/ShortString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     QNX - Initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.java
index ab1fdd7..dbcfaf4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/Field.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.java
index 32837ec..aa43278 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldByte.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.java
index 4c47758..a11f872 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldChar.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.java
index 241bd0e..89a13b2c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldDouble.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.java
index 15084c9..7951fb7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldFloat.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.java
index 0e8d982..f364383 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldInt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.java
index c23dd85..513f97c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldList.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.java
index 4741f0b..f6105e0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldLong.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.java
index dc8e97e..f612e12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldManyToOne.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.java
index 35389fc..58edf7d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToMany.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.java
index 6d89505..296a2fe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldOneToOne.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.java
index 12800de..b3cb1ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldPointer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.java
index 394f567..92b3f08 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.java
index d4954a4..7a3e8f1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldSearchKey.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.java
index 679ae48..ad95cf4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldShort.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.java
index 7781c33..2275cd3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/FieldString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.java
index 5ce8d94..b345f95 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IDestructableField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.java
index 6bd62d0..90afa02 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.java
index 0efe34e..7c04f4e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/IRefCountedField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.java
index 6eb225d..13e99fc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/field/StructDef.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.java
index f8ced7a..7b6c665 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/ClassFileToIndexConverter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.java
index 9b586e4..73e90d0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/FileStateCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.java
index 260f3e8..5dccb40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/GenericSignatures.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.java
index cf51742..14e1059 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/HierarchicalASTVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.java
index 5f00d9c..e5ac5dc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexTester.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.java
index 16f9500..cd9c948 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Indexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
@@ -564,7 +567,7 @@
 				NdType nextDeletion = toDelete.getType(numChildren - 1);
 				if (DEBUG_INSERTIONS) {
 					Package.logInfo("Deleting " + nextDeletion.getTypeId().getFieldDescriptor().getString() + " from "  //$NON-NLS-1$//$NON-NLS-2$
-							+ new String(toDelete.getLocation().getString()) + " " + toDelete.address); //$NON-NLS-1$
+							+ toDelete.getLocation().getString() + " " + toDelete.address); //$NON-NLS-1$
 				}
 				nextDeletion.delete();
 			} finally {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.java
index 6602883..b22d49e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/IndexerEvent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.java
index afcd5ef..77c05a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Messages.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.java
index eb543a3..b14eb2a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/Package.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.java
index 105835c..3389da2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/indexer/WorkspaceSnapshot.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.java
index e352432..0fb7322 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/ClasspathResolver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.java
index 7974142..43203b8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/FileFingerprint.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.java
index 290db7d..2a6f640 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/IndexFilter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2006, 2016 Wind River Systems, Inc. and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Markus Schorn - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.java
index 37cdf08..c4575b3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.java
index 9c773eb..d197313 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/JavaNames.java
@@ -1,10 +1,13 @@
 package org.aspectj.org.eclipse.jdt.internal.core.nd.java;
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.java
index ceef6f9..c8f62d9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.java
index 3910c01..7deff40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdAnnotationValuePair.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.java
index bcab113..189393c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdBinding.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.java
index d0ed695..2937782 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdComplexTypeSignature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.java
index c693178..8d7a818 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.java
index 986d20a..db50ce2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.java
index 85b4b26..c9cae03 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.java
index 714b430..048beab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantBoolean.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.java
index 156e727..fe03b1b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantByte.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.java
index a633f92..f19b598 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantChar.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.java
index 9f3e2b5..5ddda27 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantClass.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.java
index 228dc33..5881953 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantDouble.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.java
index c3ebd72..59fda84 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantEnum.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.java
index 8ad18c8..3694990 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantFloat.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.java
index 90bf95d..c9a3468 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantInt.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.java
index 1025d9a..b7dd6f6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantLong.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.java
index b31afd8..a8abda7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantShort.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.java
index 3ba7d4c..7b41267 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdConstantString.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.java
index ee9302b..3854824 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.java
index e9b1d4b..96331ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodAnnotationData.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.java
index 18b4795..b708545 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.java
index 6e2e1e3..6e00e2b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdMethodParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.java
index 580a527..3491eba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdResourceFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.java
index 0ab032f..4ce11f5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.java
index 59f5c41..cd35c5d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.java
index 8ed5f88..1cf1202 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeArgument.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.java
index 479a3d3..43e571d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeBound.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.java
index ea41f6b..4b79253 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeId.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.java
index 8da4c77..867d7f7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeInterface.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.java
index 9b6c7d2..253c6ea 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeParameter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.java
index 5634f5b..a20c323 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdTypeSignature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.java
index 1c8290a..bbe17ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.java
index ef866f0..b67eaa4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdWorkspaceLocation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.java
index ae7969e..eadd66f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/NdZipEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.java
index f8ef88d..0c3edd2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/Package.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.java
index 04b2916..e12b893 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TagTreeReader.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.java
index e887387..0fcce39 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/TypeRef.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.java
index c5894e2..0289f13 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.java
index be7b3cb..b5c9f2d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryModuleFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 GK Software AG, and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Stephan Herrmann - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.java
index f646158..eafd495 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeDescriptor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.java
index a2bf3ca..091f7bb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/BinaryTypeFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
@@ -64,21 +67,25 @@
 	 * a location on the filesystem.
 	 */
 	private static BinaryTypeDescriptor createDescriptor(PackageFragment pkg, ClassFile classFile) {
-		String name = classFile.getName();
 		PackageFragmentRoot root = (PackageFragmentRoot) pkg.getParent();
 		IPath location = JavaIndex.getLocationForElement(root);
 		if (location == null) {
 			return null;
 		}
-		name = root.getClassFilePath(Util.concatWith(pkg.names, name, '/'));
 		String entryName = Util.concatWith(pkg.names, classFile.getElementName(), '/');
+		String name = Util.concatWith(pkg.names, classFile.getName(), '/');
+		String overridePath = root.getClassFilePath(entryName);
+		if (overridePath != entryName) {
+			entryName = overridePath;
+			String versionPath = overridePath.substring(0, overridePath.indexOf(entryName));
+			name = versionPath + name;
+		}
 		char[] fieldDescriptor = CharArrayUtils.concat(new char[] { 'L' },
 				name.toCharArray(), new char[] { ';' });
 		IPath workspacePath = root.getPath();
 		String indexPath;
 
 		if (root instanceof JarPackageFragmentRoot) {
-			entryName = ((JarPackageFragmentRoot) root).getClassFilePath(entryName);
 			// The old version returned this, but it doesn't conform to the spec on IBinaryType.getFileName():
 			indexPath = root.getHandleIdentifier() + IDependent.JAR_FILE_ENTRY_SEPARATOR + entryName;
 			// Version that conforms to the JavaDoc spec on IBinaryType.getFileName() -- note that this breaks
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.java
index 3a89d22..5f7c679 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/ITypeAnnotationBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.java
index e6179bb..6bf938e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryField.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.java
index b545d93..535f4b0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryMethod.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.java
index 08675c8..2971a8c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryNestedType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.java
index 365d3c6..87e455d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryType.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016, 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.java
index 4be93fa..7aa2e0b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/IndexBinaryTypeAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.java
index 87bad8f..93519c7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/Package.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.java
index 1794d78..8813df9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/java/model/TypeAnnotationBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.java
index f724f2b..38bd05c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayMap.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2007, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.java
index 795e7fb..744379f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/CharArrayUtils.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.java
index 3dcb353..211ae4d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/MathUtils.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.java
index c33041a..5ac39e1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/nd/util/PathMap.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.java
index dd88315..ad47a47 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractJavaSearchScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.java
index 317cd9f..e4bf660 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/AbstractSearchScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java
index bbd515c..d82c6a0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.java
index da67612..e0e8001 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/HierarchyScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.java
index 872a734..4241bfa 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.java
index 1272470..e935d06 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.java
index a8f8635..a3bbd19 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.java
index 8a8e6ad..48ea61e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexQueryRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.java
index 01fc6d0..d3de2de 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/IndexSelector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.java
index b36e947..91ab1c2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchDocument.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.java
index 67aadc2..e10eff5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchMethodNameMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.java
index e316155..1b13044 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchParticipant.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.java
index 6213d86..d4110ee 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.java
index 1faea03..3e351b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaSearchTypeNameMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.java
index 4f212d8..e854122 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/JavaWorkspaceScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.java
index 583d2a2..97bfaac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameMatchRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.java
index 702cb50..0981b09 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/MethodNameRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.java
index 0cf2917..af9ca7e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/NameMatchRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.java
index 2b17e17..cb05b23 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PathCollector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.java
index 795dc3d..58b39c9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/PatternSearchJob.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.java
index f0ab22f..69f2c81 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/StringOperation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.java
index 3ffb3e7..d2b93e4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/SubTypeSearchJob.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.java
index 57cd25e..7e453c6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameMatchRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.java
index 2fb7c59..dd946bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/TypeNameRequestorWrapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.java
index 2cee223..f17ff14 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/UnindexedSearchScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.java
index 33fdfd0..6378a74 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AbstractIndexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.java
index fd0b5aa..94d8a2c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddFolderToIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.java
index 3f220b1..02bdccb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJarFileToIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.java
index e23ba7c..df5e51e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/AddJrtToIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.java
index 2c4f8c9..c50da67 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryContainer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.java
index 1c24b7e..ed8e721 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/BinaryIndexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.java
index 4fd0630..c0a5386 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/DefaultJavaIndexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java
index d345f41..412a566 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.java
index b49b936..63bf2a1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexAllProject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.java
index ac7d143..fa1cfc3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexBinaryFolder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.java
index 88651fe..69c7e29 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -1036,7 +1039,9 @@
 }
 public void scheduleDocumentIndexing(final SearchDocument searchDocument, IPath container, final IndexLocation indexLocation, final SearchParticipant searchParticipant) {
 	IPath targetLocation = JavaIndex.getLocationForPath(new Path(searchDocument.getPath()));
-	this.indexer.makeDirty(targetLocation);
+	if (targetLocation != null) {
+		this.indexer.makeDirty(targetLocation);
+	}
 	request(new IndexRequest(container, this) {
 		@Override
 		public boolean execute(IProgressMonitor progressMonitor) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.java
index 7b19194..e1d4b04 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexNamesRegistry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.java
index a9d66ff..457c05f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexRequest.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.java
index 0a26c61..c6191d2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/IndexingParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.java
index 333229e..015b600 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ManifestIndexer.java
@@ -15,7 +15,7 @@
 	public void indexDocument() {
 		byte[] entry = this.document.getByteContents();
 		String text = new String(entry, Charset.defaultCharset());
-		String[] kv = new String(text).split(":"); //$NON-NLS-1$
+		String[] kv = text.split(":"); //$NON-NLS-1$
 		if (kv != null && kv.length > 1 && kv[0] != null && kv[1] != null) {
 			if (kv[0].equals(AUTOMATIC_MODULE_NAME)) {
 				addModuleDeclaration(kv[1].toCharArray());
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.java
index 2b236b4..f6344ca 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/ReadWriteMonitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.java
index 486d358..433f7e1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFolderFromIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.java
index 5315171..628304e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/RemoveFromIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.java
index 5022568..6060af5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SaveIndex.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
index 724498b..acdb422 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.java
index 864e0f2..3e465c3 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/indexing/SourceIndexerRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.java
index 957cdd1..91164b7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.java
index 778fe27..8a03298 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/AndPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java
index 474b56b..3f63906 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.java
index 8d8f176..b6df637 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ClasspathSourceDirectory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.java
index 237b648..d7a988c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.java
index 465fa52..aa586fc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.java
index b661d7f..b54fe08 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ConstructorPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.java
index 469c460..d51ef58 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfAccessedFieldsPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.java
index 5fa3154..056cd6b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedMethodsPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.java
index 396c72c..635ae05 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/DeclarationOfReferencedTypesPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.java
index 53c0c28..b9f1cfe 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.java
index 9d08c78..6894120 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/FieldPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.java
index 28ed05a..9349f69 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ImportMatchLocatorParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.java
index ade9aab..8a72b24 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IndexBasedJavaSearchEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2018 Google, Inc and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *   Stefan Xenos (Google) - Initial implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.java
index 6a8fb71..093a277 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/IntersectingPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.java
index 553dbd3..dedd709 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchNameEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -46,7 +49,6 @@
 import org.aspectj.org.eclipse.jdt.internal.core.JrtPackageFragmentRoot;
 import org.aspectj.org.eclipse.jdt.internal.core.NameLookup;
 import org.aspectj.org.eclipse.jdt.internal.core.PackageFragmentRoot;
-import org.aspectj.org.eclipse.jdt.internal.core.builder.ClasspathJar;
 import org.aspectj.org.eclipse.jdt.internal.core.builder.ClasspathJrt;
 import org.aspectj.org.eclipse.jdt.internal.core.builder.ClasspathLocation;
 import org.aspectj.org.eclipse.jdt.internal.core.util.Util;
@@ -162,10 +164,10 @@
 			cp = (root instanceof JrtPackageFragmentRoot) ? 
 					new ClasspathJrt(path.toOSString(), rawClasspathEntry.getAccessRuleSet(), 
 							ClasspathEntry.getExternalAnnotationPath(rawClasspathEntry, project.getProject(), true), compliance) :
-						new ClasspathJar(manager.getZipFile(path), rawClasspathEntry.getAccessRuleSet(),
-								ClasspathEntry.getExternalAnnotationPath(rawClasspathEntry,
-										((IJavaProject) root.getParent()).getProject(), true),
-								rawClasspathEntry.isModular());
+									ClasspathLocation.forLibrary(manager.getZipFile(path), rawClasspathEntry.getAccessRuleSet(),
+												ClasspathEntry.getExternalAnnotationPath(rawClasspathEntry,
+														((IJavaProject) root.getParent()).getProject(), true),
+												rawClasspathEntry.isModular(), compliance) ;
 		} else {
 			Object target = JavaModel.getTarget(path, true);
 			if (target != null) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.java
index ac7f467..e9521f2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/JavaSearchPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.java
index cc73e79..05bfc70 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariableLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.java
index bd9d0fd..e27c650 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/LocalVariablePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.java
index 05b6576..9b35b87 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -400,8 +403,10 @@
 				// no need for field initialization
 				this.lookupEnvironment.problemReporter,
 				result);
-		this.lookupEnvironment.buildTypeBindings(unit, accessRestriction);
-		this.lookupEnvironment.completeTypeBindings(unit, true);
+		if(unit != null) {
+			this.lookupEnvironment.buildTypeBindings(unit, accessRestriction);
+			this.lookupEnvironment.completeTypeBindings(unit, true);
+		}
 	}
 }
 protected Parser basicParser() {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.java
index 16fbaa6..7c22c38 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchLocatorParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.java
index b60203f..e5338e0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MatchingNodeSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.java
index 3561fa3..99ec00a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MemberDeclarationVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.java
index 4a0c26c..59f9a7c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.java
index eb5c7eb..74baa9d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.java
index 103b28d..428b5c7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MethodPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.java
index 26df57f..3709c8a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c)  2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.java
index 555cd43..d064f06 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModuleLocator.java
@@ -11,10 +11,13 @@
 
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.java
index 5972bb7..6755720 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/ModulePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java
index 87fe7d9..1aa758e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.java
index 8960167..256195d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.java
index 2444d13..62e4135 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/OrPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.java
index 5fd4641..c77e10f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.java
index b70942c..7b0b53d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.java
index 0f5eea5..ed060ab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferenceLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.java
index fa69519..cbdc0a5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PackageReferencePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.java
index e108bc4..db704a8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PatternLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.java
index 8d01038..b03d892 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatch.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -86,7 +89,7 @@
 				}
 			}
 		} else if (this.autoModuleName != null) { // fab a module
-			contents = new String("module " + this.autoModuleName + "{}").toCharArray();  //$NON-NLS-1$//$NON-NLS-2$
+			contents = ("module " + this.autoModuleName + "{}").toCharArray();  //$NON-NLS-1$//$NON-NLS-2$
 			this.sourceFileName = "module-info.java"; //$NON-NLS-1$
 			this.compoundName = new char[][] { "module-info".toCharArray()}; //$NON-NLS-1$
 		} else {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.java
index 575ad95..25d9308 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/PossibleMatchSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java
index 26162ef..546c851 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.java
index 12f40e7..2041f5e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SecondaryTypeDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.java
index e2c13eb..5b9d1ad 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeNamesCollector.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.java
index e68bf07..1f07772 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferenceLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.java
index be2474f..8dfc1b8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/SuperTypeReferencePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java
index 1cef524..dcbd17d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java
index b3e57bb..52f0f56 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.java
index a1ce902..aef9c12 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.java
index 3a994ac..e1e096d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeParameterPattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.java
index 8d356fb..25071b6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferenceLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.java
index 6e485c6..e38bdbf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/TypeReferencePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.java
index d4e870d..fee10b9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariableLocator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.java
index 8763661..12f2ca0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/matching/VariablePattern.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.java
index 51b3fd9..8016a8d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/IJob.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.java
index 39de721..3e86898 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/search/processing/JobManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.java
index 0ed1d16..c56c549 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ASTNodeFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.java
index d75cd39..e3fdcf7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Annotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.java
index 13178e2..ce12f4a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponent.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.java
index 0ac328f..d41f934 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationComponentValue.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.java
index e151420..629fe26 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/AnnotationDefaultAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.java
index e4ae7ff..158c4b5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.java
index 46f451c..11cbeb8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BindingKeyResolver.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -428,7 +431,7 @@
 					for (int j = 0; j < length; j++) {
 						parameterTypes[j] = getType(typeParameters[j]);
 					}
-					PolymorphicMethodBinding polymorphicMethod = this.environment.createPolymorphicMethod(method, parameterTypes);
+					PolymorphicMethodBinding polymorphicMethod = this.environment.createPolymorphicMethod(method, parameterTypes, this.scope);
 					this.methodBinding = polymorphicMethod;
 					this.methodBinding = this.environment.updatePolymorphicMethodReturnType(
 							polymorphicMethod,
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.java
index 463cdaa..7fd0150 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.java
index c1b71ac..186b3f6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/BootstrapMethodsEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.java
index aa5799c..7e36c14 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CharArrayBuffer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.java
index 942ba43..5c9131c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.java
index 9dc5ae4..ad5f2f2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileReader.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2011, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -26,6 +29,7 @@
 import org.aspectj.org.eclipse.jdt.core.util.IInnerClassesAttribute;
 import org.aspectj.org.eclipse.jdt.core.util.IMethodInfo;
 import org.aspectj.org.eclipse.jdt.core.util.IModifierConstants;
+import org.aspectj.org.eclipse.jdt.core.util.INestMembersAttribute;
 import org.aspectj.org.eclipse.jdt.core.util.ISourceAttribute;
 import org.aspectj.org.eclipse.jdt.internal.compiler.util.Util;
 
@@ -43,6 +47,7 @@
 	private IFieldInfo[] fields;
 	private int fieldsCount;
 	private IInnerClassesAttribute innerClassesAttribute;
+	private INestMembersAttribute nestMembersAttribute;
 	private int[] interfaceIndexes;
 	private char[][] interfaceNames;
 	private int interfacesCount;
@@ -154,6 +159,10 @@
 						constantPoolOffsets[i] = readOffset;
 						readOffset += IConstantPoolConstant.CONSTANT_InvokeDynamic_SIZE;
 						break;
+					case IConstantPoolConstant.CONSTANT_Dynamic :
+						constantPoolOffsets[i] = readOffset;
+						readOffset += IConstantPoolConstant.CONSTANT_Dynamic_SIZE;
+						break;
 					case IConstantPoolConstant.CONSTANT_Module:
 						constantPoolOffsets[i] = readOffset;
 						readOffset += IConstantPoolConstant.CONSTANT_Module_SIZE;
@@ -295,10 +304,16 @@
 							this.attributes[attributesIndex++] = new ModulePackagesAttribute(classFileBytes, this.constantPool, readOffset);
 						} else if (equals(attributeName, IAttributeNamesConstants.MODULE_MAIN_CLASS)) {
 							this.attributes[attributesIndex++] = new ModuleMainClassAttribute(classFileBytes, this.constantPool, readOffset);
+						} else if (equals(attributeName, IAttributeNamesConstants.NEST_HOST)) {
+							this.attributes[attributesIndex++] = new NestHostAttribute(classFileBytes, this.constantPool, readOffset);
+						} else if (equals(attributeName, IAttributeNamesConstants.NEST_MEMBERS)) {
+							this.nestMembersAttribute = new NestMembersAttribute(classFileBytes, this.constantPool, readOffset);
+							this.attributes[attributesIndex++] = this.nestMembersAttribute;
 						} else {
 							this.attributes[attributesIndex++] = new ClassFileAttribute(classFileBytes, this.constantPool, readOffset);
 						}
-						readOffset += (6 + u4At(classFileBytes, readOffset + 2, 0));
+						long tmp = u4At(classFileBytes, readOffset + 2, 0);
+						readOffset += (6 + tmp);
 					}
 				} else {
 					for (int i = 0; i < this.attributesCount; i++) {
@@ -392,6 +407,11 @@
 		return this.innerClassesAttribute;
 	}
 
+	@Override
+	public INestMembersAttribute getNestMembersAttribute() {
+		return this.nestMembersAttribute;
+	}
+
 	/**
 	 * @see IClassFileReader#getInterfaceIndexes()
 	 */
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.java
index cb725f3..a9cc434 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ClassFileStruct.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.java
index 06131a3..4e4e6ba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -267,24 +270,14 @@
 				case IOpcodeMnemonics.LDC :
 					index = u1At(this.classFileBytes, 1, pc);
 					constantPoolEntry = this.constantPool.decodeEntry(index);
-					if (constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Float
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Integer
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_String
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Class) {
-							throw new ClassFormatException(ClassFormatException.INVALID_CONSTANT_POOL_ENTRY);
-					}
+					checkConstantAndThrow(constantPoolEntry.getKind());
 					visitor._ldc(pc - this.codeOffset, index, constantPoolEntry);
 					pc+=2;
 					break;
 				case IOpcodeMnemonics.LDC_W :
 					index = u2At(this.classFileBytes, 1, pc);
 					constantPoolEntry = this.constantPool.decodeEntry(index);
-					if (constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Float
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Integer
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_String
-						&& constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Class) {
-							throw new ClassFormatException(ClassFormatException.INVALID_CONSTANT_POOL_ENTRY);
-					}
+					checkConstantAndThrow(constantPoolEntry.getKind());
 					visitor._ldc_w(pc - this.codeOffset, index, constantPoolEntry);
 					pc+=3;
 					break;
@@ -1197,4 +1190,9 @@
 			}
 		}
 	}
+	private void checkConstantAndThrow(int kind) throws ClassFormatException {
+		if (kind == IConstantPoolConstant.CONSTANT_Long ||	kind == IConstantPoolConstant.CONSTANT_Double) {
+				throw new ClassFormatException(ClassFormatException.INVALID_CONSTANT_POOL_ENTRY);
+		}
+	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.java
index a902cc2..ff99a72 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CodeSnippetParsingUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2002, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.java
index c26898a..a0fc6e7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/CommentRecorderParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.java
index 2900fb7..ce73b95 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPool.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -152,6 +155,19 @@
 				constantPoolEntry2.setMethodDescriptor(getUtf8ValueAt(methodDescriptorIndex));
 				constantPoolEntry = constantPoolEntry2;
 				break;
+			case IConstantPoolConstant.CONSTANT_Dynamic :
+				constantPoolEntry2 = new ConstantPoolEntry2();
+				constantPoolEntry2.reset();
+				constantPoolEntry2.setKind(kind);
+				constantPoolEntry2.setBootstrapMethodAttributeIndex(u2At(this.classFileBytes,  1, this.constantPoolOffset[index]));
+				int nameAndTypeIndex2 = u2At(this.classFileBytes,  3, this.constantPoolOffset[index]);
+				constantPoolEntry2.setNameAndTypeIndex(nameAndTypeIndex2);
+				fieldNameIndex = u2At(this.classFileBytes,  1, this.constantPoolOffset[nameAndTypeIndex2]);
+				fieldDescriptorIndex = u2At(this.classFileBytes,  3, this.constantPoolOffset[nameAndTypeIndex2]);
+				constantPoolEntry2.setFieldName(getUtf8ValueAt(fieldNameIndex));
+				constantPoolEntry2.setFieldDescriptor(getUtf8ValueAt(fieldDescriptorIndex));
+				constantPoolEntry = constantPoolEntry2;
+				break;
 			case IConstantPoolConstant.CONSTANT_Module :
 				constantPoolEntry2 = new ConstantPoolEntry2();
 				constantPoolEntry2.reset();
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.java
index 9bdce6f..c997377 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.java
index e011a58..5cb0428 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantPoolEntry2.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.java
index b783c26..4b4bc69 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ConstantValueAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.java
index 561e58b..9f9b542 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DOMFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.java
index 759d899..513898e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultBytecodeVisitor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -2040,6 +2043,15 @@
 					Integer.toString(index),
 					returnConstantClassName(constantPoolEntry)
 				}));
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodType :
+				appendConstantMethodType(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC_W, index, constantPoolEntry);
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodHandle :
+				appendConstantMethodHandle(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC_W, index, constantPoolEntry);
+				break;
 		}
 		writeNewLine();
 	}
@@ -2078,10 +2090,51 @@
 					Integer.toString(index),
 					returnConstantClassName(constantPoolEntry)
 				}));
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodType :
+				appendConstantMethodType(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC, index, constantPoolEntry);
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodHandle :
+				appendConstantMethodHandle(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC, index, constantPoolEntry);
+				break;
+			case IConstantPoolConstant.CONSTANT_Dynamic :
+				appendConstantDynamic(this.buffer, Messages.classformat_ldc_w_dynamic,
+						IOpcodeMnemonics.LDC, index, constantPoolEntry);
+				break;
 		}
 		writeNewLine();
 	}
 
+	private StringBuffer appendConstantMethodType(StringBuffer s, String messageKind, int opcode,
+			int index, IConstantPoolEntry constantPoolEntry) {
+		return s.append(Messages.bind(messageKind, new String[] {
+				OpcodeStringValues.BYTECODE_NAMES[opcode],
+				Integer.toString(index),
+				new String(constantPoolEntry.getMethodDescriptor())
+			}));
+	}
+
+	private StringBuffer appendConstantMethodHandle(StringBuffer s, String messageKind, int opcode,
+			int index, IConstantPoolEntry constantPoolEntry) {
+		return s.append(Messages.bind(messageKind, new String[] {
+				OpcodeStringValues.BYTECODE_NAMES[opcode],
+				Integer.toString(index),
+				Integer.toString(((IConstantPoolEntry2) constantPoolEntry).getReferenceKind()),
+				Integer.toString(((IConstantPoolEntry2) constantPoolEntry).getReferenceIndex())
+			}));
+	}
+	private StringBuffer appendConstantDynamic(StringBuffer s, String messageKind, int opcode,
+			int index, IConstantPoolEntry entry) {
+		return s.append(Messages.bind(messageKind, new String[] {
+				OpcodeStringValues.BYTECODE_NAMES[opcode],
+				Integer.toString(index),
+				Integer.toString(((IConstantPoolEntry2) entry).getBootstrapMethodAttributeIndex()),
+				new String(entry.getFieldName()),
+				returnClassName(Signature.toCharArray(entry.getFieldDescriptor()))
+			}));
+	}
 	/**
 	 * @see IBytecodeVisitor#_ldc2_w(int, int, IConstantPoolEntry)
 	 */
@@ -2102,6 +2155,19 @@
 					Integer.toString(index),
 					Double.toString(constantPoolEntry.getDoubleValue())
 				}));
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodType :
+				appendConstantMethodType(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC2_W, index, constantPoolEntry);
+				break;
+			case IConstantPoolConstant.CONSTANT_MethodHandle :
+				appendConstantMethodHandle(this.buffer, Messages.classformat_ldc_w_methodhandle,
+						IOpcodeMnemonics.LDC2_W, index, constantPoolEntry);
+				break;
+			case IConstantPoolConstant.CONSTANT_Dynamic :
+				appendConstantDynamic(this.buffer, Messages.classformat_ldc_w_dynamic,
+						IOpcodeMnemonics.LDC2_W, index, constantPoolEntry);
+				break;
 		}
 		writeNewLine();
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.java
index 64623a6..b9d5782 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/DefaultStackMapFrame.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.java
index f2a94d4..9129955 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Disassembler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -19,6 +22,7 @@
 import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation;
 import org.aspectj.org.eclipse.jdt.core.util.*;
 import org.aspectj.org.eclipse.jdt.internal.compiler.codegen.AttributeNamesConstants;
+import org.aspectj.org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
 import org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants;
 
 /**
@@ -986,24 +990,10 @@
 			String versionNumber = VERSION_UNKNOWN;
 			if (minorVersion == 3 && majorVersion == 45) {
 				versionNumber = JavaCore.VERSION_1_1;
-			} else if (minorVersion == 0 && majorVersion == 46) {
-				versionNumber = JavaCore.VERSION_1_2;
-			} else if (minorVersion == 0 && majorVersion == 47) {
-				versionNumber = JavaCore.VERSION_1_3;
-			} else if (minorVersion == 0 && majorVersion == 48) {
-				versionNumber = JavaCore.VERSION_1_4;
-			} else if (minorVersion == 0 && majorVersion == 49) {
-				versionNumber = JavaCore.VERSION_1_5;
-			} else if (minorVersion == 0 && majorVersion == 50) {
-				versionNumber = JavaCore.VERSION_1_6;
-			} else if (minorVersion == 0 && majorVersion == 51) {
-				versionNumber = JavaCore.VERSION_1_7;
-			} else if (minorVersion == 0 && majorVersion == 52) {
-				versionNumber = JavaCore.VERSION_1_8;
-			} else if (minorVersion == 0 && majorVersion == 53) {
-				versionNumber = JavaCore.VERSION_9;
-			} else if (minorVersion == 0 && majorVersion == 54) {
-				versionNumber = JavaCore.VERSION_10;
+			} else {
+				versionNumber = CompilerOptions.versionFromJdkLevel((majorVersion << 16) + minorVersion);
+				if (versionNumber.length() == 0)
+					versionNumber = VERSION_UNKNOWN;
 			}
 			buffer.append(
 				Messages.bind(Messages.classfileformat_versiondetails,
@@ -1032,6 +1022,7 @@
 			writeNewLine(buffer, lineSeparator, 0);
 		}
 	
+		INestMembersAttribute nestMembersAttribute = classFileReader.getNestMembersAttribute();
 		IInnerClassesAttribute innerClassesAttribute = classFileReader.getInnerClassesAttribute();
 		IClassFileAttribute runtimeVisibleAnnotationsAttribute = Util.getAttribute(classFileReader, IAttributeNamesConstants.RUNTIME_VISIBLE_ANNOTATIONS);
 		IClassFileAttribute runtimeInvisibleAnnotationsAttribute = Util.getAttribute(classFileReader, IAttributeNamesConstants.RUNTIME_INVISIBLE_ANNOTATIONS);
@@ -1161,6 +1152,7 @@
 			IClassFileAttribute[] attributes = classFileReader.getAttributes();
 			int length = attributes.length;
 			IEnclosingMethodAttribute enclosingMethodAttribute = (IEnclosingMethodAttribute) Util.getAttribute(classFileReader, IAttributeNamesConstants.ENCLOSING_METHOD);
+			INestHostAttribute nestHostAttribute = (INestHostAttribute) Util.getAttribute(classFileReader, IAttributeNamesConstants.NEST_HOST);
 			int remainingAttributesLength = length;
 			if (innerClassesAttribute != null) {
 				remainingAttributesLength--;
@@ -1180,8 +1172,16 @@
 			if (moduleAttribute != null) {
 				remainingAttributesLength--;
 			}
+			if (nestHostAttribute != null) {
+				remainingAttributesLength--;
+			}
+			if (nestMembersAttribute != null) {
+				remainingAttributesLength--;
+			}
 			if (innerClassesAttribute != null
 					|| enclosingMethodAttribute != null
+					|| nestHostAttribute != null
+					|| nestMembersAttribute != null
 					|| bootstrapMethods != null
 					|| moduleAttribute != null
 					|| remainingAttributesLength != 0) {
@@ -1196,6 +1196,12 @@
 			if (enclosingMethodAttribute != null) {
 				disassemble(enclosingMethodAttribute, buffer, lineSeparator, 0);
 			}
+			if (nestHostAttribute != null) {
+				disassemble(nestHostAttribute, buffer, lineSeparator, 0);
+			}
+			if (nestMembersAttribute != null) {
+				disassemble(nestMembersAttribute, buffer, lineSeparator, 0);
+			}
 			if (bootstrapMethods != null) {
 				disassemble((IBootstrapMethodsAttribute) bootstrapMethods, buffer, lineSeparator, 0, classFileReader.getConstantPool());
 			}
@@ -1216,6 +1222,8 @@
 					for (int i = 0; i < length; i++) {
 						IClassFileAttribute attribute = attributes[i];
 						if (attribute != innerClassesAttribute
+								&& attribute != nestHostAttribute
+								&& attribute != nestMembersAttribute
 								&& attribute != sourceAttribute
 								&& attribute != signatureAttribute
 								&& attribute != enclosingMethodAttribute
@@ -1334,6 +1342,43 @@
 		buffer.append(';');		
 	}
 
+	private void disassemble(INestHostAttribute nestHostAttribute, StringBuffer buffer, String lineSeparator, int tabNumber) {
+		writeNewLine(buffer, lineSeparator, tabNumber);
+		writeNewLine(buffer, lineSeparator, tabNumber); // additional line
+		buffer.append(Messages.disassembler_nesthost);
+		buffer
+			.append(Messages.disassembler_constantpoolindex)
+			.append(nestHostAttribute.getNestHostIndex())
+			.append(" ")//$NON-NLS-1$
+			.append(nestHostAttribute.getNestHostName());
+	}
+
+	private void disassemble(INestMembersAttribute nestMembersAttribute, StringBuffer buffer, String lineSeparator, int tabNumber) {
+		writeNewLine(buffer, lineSeparator, tabNumber);
+		writeNewLine(buffer, lineSeparator, tabNumber); // additional line
+		buffer.append(Messages.disassembler_nestmembers);
+		writeNewLine(buffer, lineSeparator, tabNumber + 1);
+		INestMemberAttributeEntry[] entries = nestMembersAttribute.getNestMemberAttributesEntries();
+		int length = entries.length;
+		int nestMemberIndex;
+		INestMemberAttributeEntry entry;
+		for (int i = 0; i < length; i++) {
+			if (i != 0) {
+				buffer.append(Messages.disassembler_comma);
+				writeNewLine(buffer, lineSeparator, tabNumber + 1);
+			}
+			entry = entries[i];
+			nestMemberIndex = entry.getNestMemberIndex();
+			buffer
+				.append(Messages.disassembler_constantpoolindex)
+				.append(nestMemberIndex);
+			if (nestMemberIndex != 0) {
+				buffer
+					.append(Messages.disassembler_space)
+					.append(entry.getNestMemberName());
+			}
+		}
+	}
 	private void disassemble(IPackageVisibilityInfo iPackageVisibilityInfo, StringBuffer buffer, String lineSeparator,
 			int tabNumber, boolean isExports) {
 		buffer.append(isExports ? "exports" : "opens"); //$NON-NLS-1$ //$NON-NLS-2$
@@ -1793,7 +1838,8 @@
 			}
 			IConstantPoolEntry constantPoolEntry = constantPool.decodeEntry(i);
 			String[] methodDescription;
-			switch (constantPool.getEntryKind(i)) {
+			int kind = constantPool.getEntryKind(i);
+			switch (kind) {
 				case IConstantPoolConstant.CONSTANT_Class :
 					buffer.append(
 						Messages.bind(Messages.disassembler_constantpool_class,
@@ -1924,6 +1970,19 @@
 								new String(constantPoolEntry.getMethodName()),
 								new String(constantPoolEntry.getMethodDescriptor())
 							}));
+					break;
+				case IConstantPoolConstant.CONSTANT_Dynamic :
+					entry2 = (IConstantPoolEntry2) constantPoolEntry;
+					buffer.append(
+						Messages.bind(Messages.disassembler_constantpool_dynamic,
+							new String[] {
+								Integer.toString(i),
+								Integer.toString(entry2.getBootstrapMethodAttributeIndex()),
+								Integer.toString(entry2.getNameAndTypeIndex()),
+								new String(constantPoolEntry.getFieldName()),
+								new String(constantPoolEntry.getFieldDescriptor())
+							}));
+					break;
 			}
 		}
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.java
index 3cbe7bd..231b44e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/EnclosingMethodAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.java
index 8a17566..55453f9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.java
index fe70687..e0b35b8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExceptionTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.java
index e83e8a7..5dc9d8e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ExtendedAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.java
index a2fd4ed..138b7e1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/FieldInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.java
index 03fc392..d93b400 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HandleFactory.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.java
index 5a0b5c5..0caefe6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.java
index 1148aeb..9959f17 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashSetOfCharArrayArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.java
index f279886..f4077a2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/HashtableOfArrayToObject.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.java
index 7765883..86ff357 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ICacheEnumeration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.java
index 03df021..f4b921b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ILRUCacheable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.java
index c38d172..0faa5ff 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.java
index 1715cfe..31c3050 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/InnerClassesAttributeEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.java
index 503a604..93b2076 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/JavaElementFinder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.java
index 5b80223..087a523 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyKind.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.java
index 679384e..436b814 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/KeyToSignature.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2005, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.java
index 98bcfc5..a1d394b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LRUCache.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.java
index 0cb3eec..337323b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LineNumberAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.java
index eddcac9..0fff69b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.java
index 3d147ac..ab916bc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableReferenceInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.java
index 226ffbc..d4f7685 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.java
index 32f4777..9e5c883 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.java
index 0e37cd9..a83f70d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/LocalVariableTypeTableEntry.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.java
index 678e57f..b47009a 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MementoTokenizer.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.java
index b850cf9..2c9682c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Messages.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -274,6 +277,8 @@
 	public static String disassembler_outer_class_info_name;
 	public static String disassembler_inner_name;
 	public static String disassembler_inner_accessflags;
+	public static String disassembler_nesthost;
+	public static String disassembler_nestmembers;
 	public static String disassembler_genericattributeheader;
 	public static String disassembler_signatureattributeheader;
 	public static String disassembler_bootstrapmethodattributesheader;
@@ -301,6 +306,7 @@
 	public static String disassembler_constantpool_methodhandle;
 	public static String disassembler_constantpool_methodtype;
 	public static String disassembler_constantpool_invokedynamic;
+	public static String disassembler_constantpool_dynamic;
 	public static String disassembler_annotationdefaultheader;
 	public static String disassembler_annotationdefaultvalue;
 	public static String disassembler_annotationenumvalue;
@@ -360,6 +366,9 @@
 	public static String classformat_checkcast;
 	public static String classformat_instanceof;
 	public static String classformat_ldc_w_class;
+	public static String classformat_ldc_w_methodtype;
+	public static String classformat_ldc_w_methodhandle;
+	public static String classformat_ldc_w_dynamic;
 	public static String classformat_ldc_w_float;
 	public static String classformat_ldc_w_integer;
 	public static String classformat_ldc_w_string;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.java
index 65ce893..7a952fc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.java
index 3973aa3..4567b40 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/MethodParametersAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 Jesper Steen Moeller and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  * 
  * Contributors:
  *     Jesper Steen Moeller - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.java
index 1178620..e1e8577 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.java
index f7ee7b5..62209a2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleMainClassAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.java
index ffdd4a4..c0e0c94 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModulePackagesAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.java
index e5c6e8c..9c86d4b 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ModuleUtil.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.java
new file mode 100644
index 0000000..ccb01e8
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestHostAttribute.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.internal.core.util;
+
+import org.aspectj.org.eclipse.jdt.core.util.ClassFormatException;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPool;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPoolConstant;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPoolEntry;
+import org.aspectj.org.eclipse.jdt.core.util.INestHostAttribute;
+
+public class NestHostAttribute extends ClassFileAttribute implements INestHostAttribute {
+
+	private int hostIndex;
+	private char[] hostName;
+
+	public NestHostAttribute(byte[] classFileBytes, IConstantPool constantPool, int offset)
+			throws ClassFormatException {
+		super(classFileBytes, constantPool, offset);
+		int index = u2At(classFileBytes, 6, offset);
+		this.hostIndex = index;
+		IConstantPoolEntry constantPoolEntry = constantPool.decodeEntry(index);
+		if (constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Class) {
+			throw new ClassFormatException(ClassFormatException.INVALID_CONSTANT_POOL_ENTRY);
+		}
+		this.hostName = constantPoolEntry.getClassInfoName();
+	}
+
+	@Override
+	public char[] getNestHostName() {
+		return this.hostName;
+	}
+
+	@Override
+	public int getNestHostIndex() {
+		return this.hostIndex;
+	}
+	@Override
+	public String toString() {
+		return new String(this.hostName);
+	}
+}
\ No newline at end of file
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.java
new file mode 100644
index 0000000..50d88a8
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttribute.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.internal.core.util;
+
+import org.aspectj.org.eclipse.jdt.core.util.ClassFormatException;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPool;
+import org.aspectj.org.eclipse.jdt.core.util.INestMemberAttributeEntry;
+import org.aspectj.org.eclipse.jdt.core.util.INestMembersAttribute;
+
+/**
+ * Default implementation of INestMembersAttribute.
+ */
+public class NestMembersAttribute extends ClassFileAttribute implements INestMembersAttribute {
+	private static final INestMemberAttributeEntry[] NO_ENTRIES = new INestMemberAttributeEntry[0];
+
+	private int nestMembers;
+	private INestMemberAttributeEntry[] entries;
+
+	/**
+	 * Constructor for NestMembersAttribute.
+	 * @param classFileBytes
+	 * @param constantPool
+	 * @param offset
+	 * @throws ClassFormatException
+	 */
+	public NestMembersAttribute(
+		byte[] classFileBytes,
+		IConstantPool constantPool,
+		int offset)
+		throws ClassFormatException {
+		super(classFileBytes, constantPool, offset);
+		this.nestMembers = u2At(classFileBytes, 6, offset);
+		final int length = this.nestMembers;
+		if (length != 0) {
+			int readOffset = 8;
+			this.entries = new INestMemberAttributeEntry[length];
+			for (int i = 0; i < length; i++) {
+				this.entries[i] = new NestMembersAttributeEntry(classFileBytes, constantPool, offset + readOffset);
+				readOffset += 2;
+			}
+		} else {
+			this.entries = NO_ENTRIES;
+		}
+	}
+
+	@Override
+	public int getNumberOfNestMembers() {
+		return this.nestMembers;
+	}
+
+	@Override
+	public INestMemberAttributeEntry[] getNestMemberAttributesEntries() {
+		return this.entries;
+	}
+
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.java
new file mode 100644
index 0000000..14f69f9
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/NestMembersAttributeEntry.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2018 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.internal.core.util;
+
+import org.aspectj.org.eclipse.jdt.core.util.ClassFormatException;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPool;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPoolConstant;
+import org.aspectj.org.eclipse.jdt.core.util.IConstantPoolEntry;
+import org.aspectj.org.eclipse.jdt.core.util.INestMemberAttributeEntry;
+
+public class NestMembersAttributeEntry extends ClassFileStruct implements INestMemberAttributeEntry {
+
+	private int memberClassNameIndex;
+	private char[] memberClassName;
+
+	public NestMembersAttributeEntry(byte[] classFileBytes, IConstantPool constantPool, int offset)
+			throws ClassFormatException {
+		this.memberClassNameIndex = u2At(classFileBytes, 0, offset);
+		if (this.memberClassNameIndex != 0) {
+			IConstantPoolEntry constantPoolEntry;
+			constantPoolEntry = constantPool.decodeEntry(this.memberClassNameIndex);
+			if (constantPoolEntry.getKind() != IConstantPoolConstant.CONSTANT_Class) {
+				throw new ClassFormatException(ClassFormatException.INVALID_CONSTANT_POOL_ENTRY);
+			}
+			this.memberClassName = constantPoolEntry.getClassInfoName();
+		}
+	}
+
+	@Override
+	public char[] getNestMemberName() {
+		return this.memberClassName;
+	}
+
+	@Override
+	public int getNestMemberIndex() {
+		return this.memberClassNameIndex;
+	}
+	
+	@Override
+	public String toString() {
+		return new String(this.memberClassName);
+	}
+}
+
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.java
index 3da5e11..ace7817 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PackageVisibilityInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java
index 8c5b3d9..8bc2364 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ParameterAnnotation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.java
index f5363d1..669b3df 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ProvidesInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.java
index 8d27a11..f562806 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/PublicScanner.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.java
index d8c9c0b..48bd822 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RecordedParsingInformation.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2002, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.java
index 478a64f..c59fc20 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ReferenceInfoAdapter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.java
index 308633e..e2cfcee 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RequiresInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.java
index 89635a1..fa6e801 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ResourceCompilationUnit.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.java
index f2c4df4..e9445a6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.java
index c023fa1..d3eb1f0 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleParameterAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.java
index b759374..a93a230 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeInvisibleTypeAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.java
index ce0ba1c..38a1bb9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.java
index 732d82a..99a2cbc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleParameterAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.java
index 2a6ff1e..8a4f745 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/RuntimeVisibleTypeAnnotationsAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2012, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.java
index 9b95bd1..f82cce7 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SignatureAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.java
index f2ac7e8..3541b86 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleDocument.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.java
index 6f08d01..82f00c5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SimpleWordSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.java
index d527764..3342a60 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/SourceFileAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.java
index fe78148..e952271 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.java
index 719b7dd..97b50bf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapFrame.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.java
index 3752f08..885a6f5 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/StackMapTableAttribute.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.java
index 44fd92c..39b8bdb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/ToStringSorter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Util.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Util.java
index 71b4cee..e9f24a1 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Util.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/Util.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -3342,7 +3345,7 @@
 		}
 		int length = args.length;
 		for(int i = startingIndex;	i< length ; i++){
-			args[i] = new String(paramTypeSignatures[i-startingIndex]);
+			args[i] = paramTypeSignatures[i-startingIndex];
 		}
 		method = type.getMethod(new String(selector), args);
 		
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.java
index 0c2937d..5eee995 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/VerificationInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.java
index 9155c00..746bdba 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSet.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.java
index e310d4e..682b6cd 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/WeakHashSetOfCharArray.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2004, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
index 7cf3f28..7d00a51 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/core/util/messages.properties
@@ -1,9 +1,12 @@
 ###############################################################################
 # Copyright (c) 2000, 2018 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
 # which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
 #
 # Contributors:
 #     IBM Corporation - initial API and implementation
@@ -294,6 +297,8 @@
 disassembler_localvariabletableattributeheader = Local variable table:
 disassembler_localvariabletypetableattributeheader = Local variable type table:
 disassembler_arraydimensions = []
+disassembler_nesthost = Nest Host:
+disassembler_nestmembers = Nest Members:
 disassembler_innerattributesheader = Inner classes:
 disassembler_inner_class_info_name = inner class info:
 disassembler_outer_class_info_name = outer class info:
@@ -328,6 +333,7 @@
 disassembler_constantpool_methodhandle = constant #{0} method handle: {1} #{2} 
 disassembler_constantpool_methodtype = constant #{0} method type: #{1} {2}
 disassembler_constantpool_invokedynamic = constant #{0} invoke dynamic: #{1} #{2} {3} {4}
+disassembler_constantpool_dynamic = constant #{0} dynamic: #{1} #{2} {3} {4}
 disassembler_annotationdefaultheader = Annotation Default:\ 
 disassembler_annotationdefaultvalue= {0} (constant type)
 disassembler_annotationenumvalue = {2}.{3}(enum type #{0}.#{1})
@@ -409,6 +415,9 @@
 classformat_anewarray = {0} {2} [{1}]
 classformat_checkcast = {0} {2} [{1}]
 classformat_instanceof = {0} {2} [{1}]
+classformat_ldc_w_methodtype = {0} <MethodType {2}> [{1}]
+classformat_ldc_w_methodhandle = {0} <MethodHandle {2} {3}> [{1}]
+classformat_ldc_w_dynamic = {0} <Dynamic> {2} {3} {4} [{1}]
 classformat_ldc_w_class = {0} <Class {2}> [{1}]
 classformat_ldc_w_float = {0} <Float {2}> [{1}]
 classformat_ldc_w_integer = {0} <Integer {2}> [{1}]
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.java
index f753809..b0bfd63 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetAllocationExpression.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2014 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.java
index b62cac3..b4f55f4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetClassFile.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.java
index c014cd5..9bba483 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetCompiler.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.java
index 9c3b943..6ce4362 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEnvironment.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.java
index 7a61036..d925b92 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetEvaluator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.java
index 537969d..56dfad9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetFieldReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.java
index a327401..6912f9f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetMessageSend.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.java
index 0e120b9..23f3bde 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetParser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.java
index e65974c..b388bb6 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetQualifiedNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.java
index e9ca740..006047d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetReturnStatement.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.java
index 705109b..25d33f8 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetScope.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.java
index 37ce8d6..ef83aab 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSingleNameReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -73,7 +76,7 @@
 		case Binding.LOCAL : // reading a local variable
 			LocalVariableBinding localBinding;
 			if (!flowInfo.isDefinitelyAssigned(localBinding = (LocalVariableBinding) this.binding)) {
-				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this);
+				currentScope.problemReporter().uninitializedLocalVariable(localBinding, this, currentScope);
 			}
 			if ((flowInfo.tagBits & FlowInfo.UNREACHABLE) == 0) {
 				localBinding.useFlag = LocalVariableBinding.USED;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.java
index b6d9569..898caaf 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSkeleton.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.java
index d58b9a1..19ae614 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetSuperReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.java
index a1c255a..afb988f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetThisReference.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java
index 3f62700..0ccf11f 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2011 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.java
index dd73f47..5167872 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/CodeSnippetTypeDeclaration.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.java
index b2ef666..c08f43e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationConstants.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.java
index 784a64f..98e97d9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationContext.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.java
index 884a4e7..b347d08 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/EvaluationResult.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.java
index 7eb48a1..89ec520 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/Evaluator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2016 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.java
index 0ba22dc..9641b2e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/GlobalVariable.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.java
index ec2f3e3..4c73222 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/IRequestor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.java
index 8d76f5f..97f9aca 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/InstallException.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.java
index 2a4181d..fd47bac 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesEvaluator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2015 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.java
index 853690b..fb637b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/eval/VariablesInfo.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.java
index b626e41..1264fa4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/CommentsPreparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2018 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.java
index 4cc1c58..c20650e 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.java
index 44aafb4..d14eb1c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/DefaultCodeFormatterOptions.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
@@ -119,6 +122,7 @@
 	public int alignment_for_assignment;
 	public int alignment_for_binary_expression;
 	public int alignment_for_compact_if;
+	public int alignment_for_compact_loop;
 	public int alignment_for_conditional_expression;
 	public int alignment_for_enum_constants;
 	public int alignment_for_expressions_in_array_initializer;
@@ -142,6 +146,9 @@
 	public int alignment_for_union_type_in_multicatch;
 
 	public boolean align_type_members_on_columns;
+	public boolean align_variable_declarations_on_columns;
+	public boolean align_assignment_statements_on_columns;
+	public boolean align_with_spaces;
 	public int align_fields_grouping_blank_lines;
 
 	public String brace_position_for_annotation_type_declaration;
@@ -414,6 +421,9 @@
 	public boolean keep_empty_array_initializer_on_one_line;
 	public boolean keep_simple_if_on_one_line;
 	public boolean keep_then_statement_on_same_line;
+	public boolean keep_simple_for_body_on_same_line;
+	public boolean keep_simple_while_body_on_same_line;
+	public boolean keep_simple_do_while_body_on_same_line;
 	public boolean never_indent_block_comments_on_first_column;
 	public boolean never_indent_line_comments_on_first_column;
 	public int number_of_empty_lines_to_preserve;
@@ -458,6 +468,7 @@
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_ASSIGNMENT, getAlignment(this.alignment_for_assignment));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_BINARY_EXPRESSION, getAlignment(this.alignment_for_binary_expression));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_COMPACT_IF, getAlignment(this.alignment_for_compact_if));
+		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_COMPACT_LOOP, getAlignment(this.alignment_for_compact_loop));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_CONDITIONAL_EXPRESSION, getAlignment(this.alignment_for_conditional_expression));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_ENUM_CONSTANTS, getAlignment(this.alignment_for_enum_constants));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_EXPRESSIONS_IN_ARRAY_INITIALIZER, getAlignment(this.alignment_for_expressions_in_array_initializer));
@@ -479,7 +490,10 @@
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_TYPE_PARAMETERS, getAlignment(this.alignment_for_type_parameters));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_UNION_TYPE_IN_MULTICATCH, getAlignment(this.alignment_for_union_type_in_multicatch));
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGN_TYPE_MEMBERS_ON_COLUMNS, this.align_type_members_on_columns ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
+		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGN_VARIABLE_DECLARATIONS_ON_COLUMNS, this.align_variable_declarations_on_columns ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
+		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGN_ASSIGNMENT_STATEMENTS_ON_COLUMNS, this.align_assignment_statements_on_columns ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGN_FIELDS_GROUPING_BLANK_LINES, Integer.toString(this.align_fields_grouping_blank_lines));
+		options.put(DefaultCodeFormatterConstants.FORMATTER_ALIGN_WITH_SPACES, this.align_with_spaces ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_BRACE_POSITION_FOR_ANNOTATION_TYPE_DECLARATION, this.brace_position_for_annotation_type_declaration);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_BRACE_POSITION_FOR_ANONYMOUS_TYPE_DECLARATION, this.brace_position_for_anonymous_type_declaration);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_BRACE_POSITION_FOR_ARRAY_INITIALIZER, this.brace_position_for_array_initializer);
@@ -737,6 +751,9 @@
 		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_EMPTY_ARRAY_INITIALIZER_ON_ONE_LINE, this.keep_empty_array_initializer_on_one_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_IF_ON_ONE_LINE, this.keep_simple_if_on_one_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_THEN_STATEMENT_ON_SAME_LINE, this.keep_then_statement_on_same_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
+		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_FOR_BODY_ON_SAME_LINE, this.keep_simple_for_body_on_same_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
+		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_WHILE_BODY_ON_SAME_LINE, this.keep_simple_while_body_on_same_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
+		options.put(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_DO_WHILE_BODY_ON_SAME_LINE, this.keep_simple_do_while_body_on_same_line ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NEVER_INDENT_BLOCK_COMMENTS_ON_FIRST_COLUMN, this.never_indent_block_comments_on_first_column ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NEVER_INDENT_LINE_COMMENTS_ON_FIRST_COLUMN, this.never_indent_line_comments_on_first_column ? DefaultCodeFormatterConstants.TRUE : DefaultCodeFormatterConstants.FALSE);
 		options.put(DefaultCodeFormatterConstants.FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE, Integer.toString(this.number_of_empty_lines_to_preserve));
@@ -859,6 +876,10 @@
 				this.alignment_for_compact_if = Alignment.M_ONE_PER_LINE_SPLIT | Alignment.M_INDENT_BY_ONE;
 			}
 		}
+		final Object alignmentForCompactLoopOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_COMPACT_LOOP);
+		if (alignmentForCompactLoopOption != null)
+			this.alignment_for_compact_loop = toInt(alignmentForCompactLoopOption, Alignment.M_ONE_PER_LINE_SPLIT | Alignment.M_INDENT_BY_ONE);
+
 		final Object alignmentForConditionalExpressionOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_CONDITIONAL_EXPRESSION);
 		if (alignmentForConditionalExpressionOption != null) {
 			try {
@@ -1033,6 +1054,14 @@
 		if (alignTypeMembersOnColumnsOption != null) {
 			this.align_type_members_on_columns = DefaultCodeFormatterConstants.TRUE.equals(alignTypeMembersOnColumnsOption);
 		}
+		final Object alignVariableDeclarationsOnColumnsOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGN_VARIABLE_DECLARATIONS_ON_COLUMNS);
+		if (alignVariableDeclarationsOnColumnsOption != null) {
+			this.align_variable_declarations_on_columns = DefaultCodeFormatterConstants.TRUE.equals(alignVariableDeclarationsOnColumnsOption);
+		}
+		final Object alignAssignmentStatementsOnColumnsOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGN_ASSIGNMENT_STATEMENTS_ON_COLUMNS);
+		if (alignAssignmentStatementsOnColumnsOption != null) {
+			this.align_assignment_statements_on_columns = DefaultCodeFormatterConstants.TRUE.equals(alignAssignmentStatementsOnColumnsOption);
+		}
 		final Object alignGroupSepartionBlankLinesOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGN_FIELDS_GROUPING_BLANK_LINES);
 		if (alignTypeMembersOnColumnsOption != null) {
 			try {
@@ -1043,6 +1072,10 @@
 				this.align_fields_grouping_blank_lines = Integer.MAX_VALUE;
 			}
 		}
+		final Object alignWithSpaces = settings.get(DefaultCodeFormatterConstants.FORMATTER_ALIGN_WITH_SPACES);
+		if (alignWithSpaces != null) {
+			this.align_with_spaces = DefaultCodeFormatterConstants.TRUE.equals(alignWithSpaces);
+		}
 		final Object bracePositionForAnnotationTypeDeclarationOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_BRACE_POSITION_FOR_ANNOTATION_TYPE_DECLARATION);
 		if (bracePositionForAnnotationTypeDeclarationOption != null) {
 			try {
@@ -2188,6 +2221,18 @@
 		if (keepThenStatementOnSameLineOption != null) {
 			this.keep_then_statement_on_same_line = DefaultCodeFormatterConstants.TRUE.equals(keepThenStatementOnSameLineOption);
 		}
+		final Object keepSimpleForBodyOnSameLineOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_FOR_BODY_ON_SAME_LINE);
+		if (keepSimpleForBodyOnSameLineOption != null) {
+			this.keep_simple_for_body_on_same_line = DefaultCodeFormatterConstants.TRUE.equals(keepSimpleForBodyOnSameLineOption);
+		}
+		final Object keepSimpleWhileBodyOnSameLineOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_WHILE_BODY_ON_SAME_LINE);
+		if (keepSimpleWhileBodyOnSameLineOption != null) {
+			this.keep_simple_while_body_on_same_line = DefaultCodeFormatterConstants.TRUE.equals(keepSimpleWhileBodyOnSameLineOption);
+		}
+		final Object keepSimpleDoWhileBodyOnSameLineOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_KEEP_SIMPLE_DO_WHILE_BODY_ON_SAME_LINE);
+		if (keepSimpleDoWhileBodyOnSameLineOption != null) {
+			this.keep_simple_do_while_body_on_same_line = DefaultCodeFormatterConstants.TRUE.equals(keepSimpleDoWhileBodyOnSameLineOption);
+		}
 		final Object neverIndentBlockCommentOnFirstColumnOption = settings.get(DefaultCodeFormatterConstants.FORMATTER_NEVER_INDENT_BLOCK_COMMENTS_ON_FIRST_COLUMN);
 		if (neverIndentBlockCommentOnFirstColumnOption != null) {
 			this.never_indent_block_comments_on_first_column = DefaultCodeFormatterConstants.TRUE.equals(neverIndentBlockCommentOnFirstColumnOption);
@@ -2443,6 +2488,7 @@
 		this.alignment_for_assignment = Alignment.M_NO_ALIGNMENT;
 		this.alignment_for_binary_expression = Alignment.M_COMPACT_SPLIT;
 		this.alignment_for_compact_if = Alignment.M_ONE_PER_LINE_SPLIT | Alignment.M_INDENT_BY_ONE;
+		this.alignment_for_compact_loop = Alignment.M_ONE_PER_LINE_SPLIT | Alignment.M_INDENT_BY_ONE;
 		this.alignment_for_conditional_expression = Alignment.M_ONE_PER_LINE_SPLIT;
 		this.alignment_for_enum_constants = Alignment.M_NO_ALIGNMENT;
 		this.alignment_for_expressions_in_array_initializer = Alignment.M_COMPACT_SPLIT;
@@ -2464,6 +2510,9 @@
 		this.alignment_for_type_parameters = Alignment.M_NO_ALIGNMENT;
 		this.alignment_for_union_type_in_multicatch = Alignment.M_COMPACT_SPLIT;
 		this.align_type_members_on_columns = false;
+		this.align_variable_declarations_on_columns = false;
+		this.align_assignment_statements_on_columns = false;
+		this.align_with_spaces = false;
 		this.align_fields_grouping_blank_lines = Integer.MAX_VALUE;
 		this.brace_position_for_annotation_type_declaration = DefaultCodeFormatterConstants.END_OF_LINE;
 		this.brace_position_for_anonymous_type_declaration = DefaultCodeFormatterConstants.END_OF_LINE;
@@ -2720,6 +2769,9 @@
 		this.keep_empty_array_initializer_on_one_line = false;
 		this.keep_simple_if_on_one_line = false;
 		this.keep_then_statement_on_same_line = false;
+		this.keep_simple_for_body_on_same_line = false;
+		this.keep_simple_while_body_on_same_line = false;
+		this.keep_simple_do_while_body_on_same_line = false;
 		this.never_indent_block_comments_on_first_column = false;
 		this.never_indent_line_comments_on_first_column = false;
 		this.number_of_empty_lines_to_preserve = 1;
@@ -2756,6 +2808,7 @@
 		this.alignment_for_assignment = Alignment.M_NO_ALIGNMENT;
 		this.alignment_for_binary_expression = Alignment.M_COMPACT_SPLIT;
 		this.alignment_for_compact_if = Alignment.M_COMPACT_SPLIT;
+		this.alignment_for_compact_loop = Alignment.M_COMPACT_SPLIT;
 		this.alignment_for_conditional_expression = Alignment.M_NEXT_PER_LINE_SPLIT;
 		this.alignment_for_enum_constants = Alignment.M_COMPACT_SPLIT;
 		this.alignment_for_expressions_in_array_initializer = Alignment.M_COMPACT_SPLIT;
@@ -2777,6 +2830,9 @@
 		this.alignment_for_type_parameters = Alignment.M_NO_ALIGNMENT;
 		this.alignment_for_union_type_in_multicatch = Alignment.M_COMPACT_SPLIT;
 		this.align_type_members_on_columns = false;
+		this.align_variable_declarations_on_columns = false;
+		this.align_assignment_statements_on_columns = false;
+		this.align_with_spaces = false;
 		this.align_fields_grouping_blank_lines = Integer.MAX_VALUE;
 		this.brace_position_for_annotation_type_declaration = DefaultCodeFormatterConstants.END_OF_LINE;
 		this.brace_position_for_anonymous_type_declaration = DefaultCodeFormatterConstants.END_OF_LINE;
@@ -3033,6 +3089,9 @@
 		this.keep_empty_array_initializer_on_one_line = false;
 		this.keep_simple_if_on_one_line = false;
 		this.keep_then_statement_on_same_line = false;
+		this.keep_simple_for_body_on_same_line = false;
+		this.keep_simple_while_body_on_same_line = false;
+		this.keep_simple_do_while_body_on_same_line = false;
 		this.never_indent_block_comments_on_first_column = false;
 		this.never_indent_line_comments_on_first_column = false;
 		this.number_of_empty_lines_to_preserve = 1;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.java
index d221d8a..6041ecb 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/LineBreaksPreparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2014, 2015 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2014, 2018 Mateusz Matela and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -369,9 +372,11 @@
 	@Override
 	public boolean visit(DoStatement node) {
 		Statement body = node.getBody();
-		handleLoopBody(body);
+		boolean sameLine = this.options.keep_simple_do_while_body_on_same_line;
+		if (!sameLine)
+			handleLoopBody(body);
 		if (this.options.insert_new_line_before_while_in_do_statement
-				|| (!(body instanceof Block) && !(body instanceof EmptyStatement))) {
+				|| (!(body instanceof Block) && !(body instanceof EmptyStatement) && !sameLine)) {
 			Token whileToken = this.tm.firstTokenBefore(node.getExpression(), TokenNamewhile);
 			whileToken.breakBefore();
 		}
@@ -535,7 +540,8 @@
 
 	@Override
 	public boolean visit(WhileStatement node) {
-		handleLoopBody(node.getBody());
+		if (!this.options.keep_simple_while_body_on_same_line)
+			handleLoopBody(node.getBody());
 
 		int lParen = this.tm.firstIndexIn(node, TokenNameLPAREN);
 		int rParen = this.tm.firstIndexAfter(node.getExpression(), TokenNameRPAREN);
@@ -545,7 +551,8 @@
 
 	@Override
 	public boolean visit(ForStatement node) {
-		handleLoopBody(node.getBody());
+		if (!this.options.keep_simple_for_body_on_same_line)
+			handleLoopBody(node.getBody());
 
 		int lParen = this.tm.firstIndexIn(node, TokenNameLPAREN);
 		int rParen = this.tm.firstIndexBefore(node.getBody(), TokenNameRPAREN);
@@ -555,7 +562,8 @@
 
 	@Override
 	public boolean visit(EnhancedForStatement node) {
-		handleLoopBody(node.getBody());
+		if (!this.options.keep_simple_for_body_on_same_line)
+			handleLoopBody(node.getBody());
 
 		int lParen = this.tm.firstIndexIn(node, TokenNameLPAREN);
 		int rParen = this.tm.firstIndexBefore(node.getBody(), TokenNameRPAREN);
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.java
index f9e686d..5e6750d 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/SpacePreparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2014, 2016 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2014, 2018 Mateusz Matela and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -38,6 +41,7 @@
 import org.aspectj.org.eclipse.jdt.core.dom.CreationReference;
 import org.aspectj.org.eclipse.jdt.core.dom.Dimension;
 import org.aspectj.org.eclipse.jdt.core.dom.DoStatement;
+import org.aspectj.org.eclipse.jdt.core.dom.EmptyStatement;
 import org.aspectj.org.eclipse.jdt.core.dom.EnhancedForStatement;
 import org.aspectj.org.eclipse.jdt.core.dom.EnumConstantDeclaration;
 import org.aspectj.org.eclipse.jdt.core.dom.EnumDeclaration;
@@ -363,6 +367,7 @@
 				this.options.insert_space_after_opening_paren_in_while);
 		handleTokenBefore(node.getBody(), TokenNameRPAREN, this.options.insert_space_before_closing_paren_in_while,
 				false);
+		handleLoopBody(node.getBody());
 		return true;
 	}
 
@@ -564,16 +569,14 @@
 				this.options.insert_space_after_opening_paren_in_if);
 
 		Statement thenStatement = node.getThenStatement();
-		int closingParenIndex = this.tm.firstIndexBefore(thenStatement, TokenNameRPAREN);
-		handleToken(this.tm.get(closingParenIndex), this.options.insert_space_before_closing_paren_in_if,
-				/* space before then statement may be needed if it will stay on the same line */
-				!(thenStatement instanceof Block) && !this.tm.get(closingParenIndex + 1).isComment());
+		handleTokenBefore(thenStatement, TokenNameRPAREN, this.options.insert_space_before_closing_paren_in_if, false);
 
 		if (thenStatement instanceof Block && this.tm.isGuardClause((Block) thenStatement)) {
 			handleToken(thenStatement, TokenNameLBRACE, false, true);
 			this.tm.lastTokenIn(node, TokenNameRBRACE).spaceBefore();
 		}
 
+		handleLoopBody(thenStatement);
 		handleSemicolon(thenStatement);
 		return true;
 	}
@@ -597,6 +600,8 @@
 		handleTokenBefore(node.getBody(), TokenNameSEMICOLON,
 				this.options.insert_space_before_semicolon_in_for && !part2Empty,
 				this.options.insert_space_after_semicolon_in_for && !part3Empty);
+
+		handleLoopBody(node.getBody());
 		return true;
 	}
 
@@ -622,6 +627,7 @@
 				this.options.insert_space_before_closing_paren_in_for, false);
 		handleTokenAfter(node.getParameter(), TokenNameCOLON, this.options.insert_space_before_colon_in_for,
 				this.options.insert_space_after_colon_in_for);
+		handleLoopBody(node.getBody());
 		return true;
 	}
 
@@ -1082,6 +1088,15 @@
 		}
 	}
 
+	private void handleLoopBody(Statement loopBody) {
+		/* space before body statement may be needed if it will stay on the same line */
+		int firstTokenIndex = this.tm.firstIndexIn(loopBody, -1);
+		if (!(loopBody instanceof Block) && !(loopBody instanceof EmptyStatement)
+				&& !this.tm.get(firstTokenIndex - 1).isComment()) {
+			this.tm.get(firstTokenIndex).spaceBefore();
+		}
+	}
+
 	public void finishUp() {
 		this.tm.traverse(0, new TokenTraverser() {
 			boolean isPreviousJIDP = false;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.java
index 3186305..6a7d7b4 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TextEditsBuilder.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2018 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -58,7 +61,7 @@
 		this.options = options;
 		this.regions = adaptRegions(regions);
 
-		this.alignChar = this.options.tab_char;
+		this.alignChar = this.options.align_with_spaces ? DefaultCodeFormatterOptions.SPACE : this.options.tab_char;
 		this.sourceLimit = source.length();
 		this.parent = null;
 
@@ -238,6 +241,10 @@
 				if (wrapPolicy.wrapMode != WrapMode.BLOCK_INDENT)
 					spaces += token.getIndent() - parentLineStart.getIndent();
 				token = parentLineStart;
+				if (wrapPolicy == token.getWrapPolicy()) {
+					assert wrapPolicy == WrapPolicy.FORCE_FIRST_COLUMN || wrapPolicy == WrapPolicy.DISABLE_WRAP;
+					break;
+				}
 				wrapPolicy = token.getWrapPolicy();
 			}
 		}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/Token.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/Token.java
index 5724641..127d4a9 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/Token.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/Token.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2015 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.java
index bda7b9d..3ca0bfc 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenManager.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2016 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -281,19 +284,15 @@
 
 	public int getPositionInLine(int tokenIndex) {
 		Token token = get(tokenIndex);
-		if (token.getAlign() > 0)
-			return get(tokenIndex).getAlign();
 		// find the first token in line and calculate position of given token
 		int firstTokenIndex = token.getLineBreaksBefore() > 0 ? tokenIndex : findFirstTokenInLine(tokenIndex);
 		Token firstToken = get(firstTokenIndex);
 		int startingPosition = toIndent(firstToken.getIndent(), firstToken.getWrapPolicy() != null);
-		if (firstTokenIndex == tokenIndex)
-			return startingPosition;
 
 		this.positionInLineCounter.value = tokenIndex;
 		this.positionInLineCounter.counter = startingPosition;
 		traverse(firstTokenIndex, this.positionInLineCounter);
-		return this.positionInLineCounter.counter;
+		return Math.max(this.positionInLineCounter.counter, token.getAlign());
 	}
 
 	public int findSourcePositionInLine(int position) {
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.java
index 38757ca..93c548c 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/TokenTraverser.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2015 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.java
new file mode 100644
index 0000000..3c1b810
--- /dev/null
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/Aligner.java
@@ -0,0 +1,281 @@
+/*******************************************************************************
+ * Copyright (c) 2014, 2018 Mateusz Matela and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
+ *     Lars Vogel <Lars.Vogel@vogella.com> - Contributions for
+ *     						Bug 473178
+ *******************************************************************************/
+package org.aspectj.org.eclipse.jdt.internal.formatter.linewrap;
+
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameCOMMENT_BLOCK;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameCOMMENT_LINE;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameEQUAL;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameIdentifier;
+import static java.util.stream.Collectors.toList;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+import java.util.OptionalInt;
+import java.util.function.Function;
+import java.util.stream.IntStream;
+
+import org.aspectj.org.eclipse.jdt.core.dom.ASTNode;
+import org.aspectj.org.eclipse.jdt.core.dom.Assignment;
+import org.aspectj.org.eclipse.jdt.core.dom.Block;
+import org.aspectj.org.eclipse.jdt.core.dom.BodyDeclaration;
+import org.aspectj.org.eclipse.jdt.core.dom.ExpressionStatement;
+import org.aspectj.org.eclipse.jdt.core.dom.FieldDeclaration;
+import org.aspectj.org.eclipse.jdt.core.dom.Statement;
+import org.aspectj.org.eclipse.jdt.core.dom.VariableDeclarationFragment;
+import org.aspectj.org.eclipse.jdt.core.dom.VariableDeclarationStatement;
+import org.aspectj.org.eclipse.jdt.internal.formatter.DefaultCodeFormatterOptions;
+import org.aspectj.org.eclipse.jdt.internal.formatter.Token;
+import org.aspectj.org.eclipse.jdt.internal.formatter.TokenManager;
+import org.aspectj.org.eclipse.jdt.internal.formatter.TokenTraverser;
+
+/** Implementation of the "Align items on columns" feature */
+public class Aligner {
+	private class PositionCounter extends TokenTraverser {
+		int stoppingIndex;
+		int maxPosition;
+
+		public PositionCounter() {
+			// nothing to do
+		}
+
+		@Override
+		protected boolean token(Token token, int index) {
+			if (index == this.stoppingIndex)
+				return false;
+			if (getLineBreaksBefore() > 0)
+				this.counter = Aligner.this.tm.getPositionInLine(index);
+			if (token.getAlign() > 0)
+				this.counter = token.getAlign();
+			this.counter += Aligner.this.tm.getLength(token, this.counter);
+			if (isSpaceAfter() && getLineBreaksAfter() == 0)
+				this.counter++;
+			this.maxPosition = Math.max(this.maxPosition, this.counter);
+			return true;
+		}
+
+		public int findMaxPosition(int fromIndex, int toIndex) {
+			this.counter = Aligner.this.tm.getPositionInLine(fromIndex);
+			this.stoppingIndex = toIndex;
+			this.maxPosition = 0;
+			Aligner.this.tm.traverse(fromIndex, this);
+			return this.maxPosition;
+		}
+	}
+
+	@FunctionalInterface
+	private interface AlignIndexFinder<N extends ASTNode> {
+		Optional<Integer> findIndex(N node);
+	}
+
+	private final List<List<? extends ASTNode>> alignGroups = new ArrayList<>();
+
+	private final DefaultCodeFormatterOptions options;
+
+	final TokenManager tm;
+
+	public Aligner(TokenManager tokenManager, DefaultCodeFormatterOptions options) {
+		this.tm = tokenManager;
+		this.options = options;
+	}
+
+	public void handleAlign(List<BodyDeclaration> bodyDeclarations) {
+		if (!this.options.align_type_members_on_columns)
+			return;
+		List<List<FieldDeclaration>> fieldGroups = toAlignGroups(bodyDeclarations,
+				n -> optionalCast(n, FieldDeclaration.class));
+		this.alignGroups.addAll(fieldGroups);
+
+		AlignIndexFinder<FieldDeclaration> nameFinder = fd -> findName(
+				(VariableDeclarationFragment) fd.fragments().get(0));
+		fieldGroups.forEach(fg -> alignNodes(fg, nameFinder));
+
+		AlignIndexFinder<FieldDeclaration> assignFinder = fd -> findAssign(
+				(VariableDeclarationFragment) fd.fragments().get(0));
+		fieldGroups.forEach(fg -> alignNodes(fg, assignFinder));
+	}
+
+	public void handleAlign(Block block) {
+		List<Statement> statements = block.statements();
+		if (this.options.align_variable_declarations_on_columns)
+			alignDeclarations(statements);
+		if (this.options.align_assignment_statements_on_columns)
+			alignAssignmentStatements(statements);
+	}
+
+	private void alignDeclarations(List<Statement> statements) {
+		List<List<VariableDeclarationStatement>> variableGroups = toAlignGroups(statements,
+				n -> optionalCast(n, VariableDeclarationStatement.class));
+		this.alignGroups.addAll(variableGroups);
+
+		AlignIndexFinder<VariableDeclarationStatement> nameFinder = vd -> findName(
+				(VariableDeclarationFragment) vd.fragments().get(0));
+		variableGroups.forEach(vg -> alignNodes(vg, nameFinder));
+
+		AlignIndexFinder<VariableDeclarationStatement> assignFinder = vd -> findAssign(
+				(VariableDeclarationFragment) vd.fragments().get(0));
+		variableGroups.forEach(vg -> alignNodes(vg, assignFinder));
+	}
+
+	private void alignAssignmentStatements(List<Statement> statements) {
+		List<List<ExpressionStatement>> assignmentGroups = toAlignGroups(statements,
+				n -> optionalCast(n, ExpressionStatement.class)
+						.filter(es -> es.getExpression() instanceof Assignment));
+		this.alignGroups.addAll(assignmentGroups);
+
+		AlignIndexFinder<ExpressionStatement> assignFinder = es -> {
+			Assignment a = (Assignment) es.getExpression();
+			int operatorIndex = this.tm.firstIndexBefore(a.getRightHandSide(), -1);
+			while (this.tm.get(operatorIndex).isComment())
+				operatorIndex--;
+			return Optional.of(operatorIndex);
+		};
+		assignmentGroups.forEach(ag -> alignNodes(ag, assignFinder));
+
+		if (this.options.align_with_spaces || this.options.tab_char != DefaultCodeFormatterOptions.TAB) {
+			// align assign operators on their right side (e.g. +=, >>=)
+			for (List<ExpressionStatement> group : assignmentGroups) {
+				List<Token> assignTokens = group.stream()
+						.map(assignFinder::findIndex)
+						.filter(Optional::isPresent)
+						.map(o -> this.tm.get(o.get()))
+						.collect(toList());
+				int maxWidth = assignTokens.stream().mapToInt(Token::countChars).max().orElse(0);
+				for (Token token : assignTokens)
+					token.setAlign(token.getAlign() + maxWidth - token.countChars());
+			}
+		}
+	}
+
+	private <N extends ASTNode> Optional<N> optionalCast(ASTNode node, Class<N> c) {
+		return Optional.of(node).filter(c::isInstance).map(c::cast);
+	}
+
+	private Optional<Integer> findName(VariableDeclarationFragment fragment) {
+		int nameIndex = this.tm.firstIndexIn(fragment.getName(), TokenNameIdentifier);
+		return Optional.of(nameIndex);
+	}
+
+	private Optional<Integer> findAssign(VariableDeclarationFragment fragment) {
+		return Optional.ofNullable(fragment.getInitializer())
+				.map(i -> this.tm.firstIndexBefore(i, TokenNameEQUAL));
+	}
+
+	private <N extends ASTNode> List<List<N>> toAlignGroups(List<? extends ASTNode> nodes,
+			Function<ASTNode, Optional<N>> nodeConverter) {
+		List<List<N>> result = new ArrayList<>();
+		List<N> alignGroup = new ArrayList<>();
+		N previous = null;
+		for (ASTNode node : nodes) {
+			Optional<N> converted = nodeConverter.apply(node);
+			if (converted.isPresent()) {
+				if (isNewGroup(node, previous)) {
+					result.add(alignGroup);
+					alignGroup = new ArrayList<>();
+				}
+				alignGroup.add(converted.get());
+			}
+			previous = converted.orElse(null);
+		}
+		result.add(alignGroup);
+		result.removeIf(l -> l.size() < 2);
+		return result;
+	}
+
+	private boolean isNewGroup(ASTNode node, ASTNode previousNode) {
+		if (previousNode == null)
+			return true;
+		int lineBreaks = 0;
+		int from = this.tm.lastIndexIn(previousNode, -1);
+		int to = this.tm.firstIndexIn(node, -1);
+		Token previousToken = this.tm.get(from);
+		for (int i = from + 1; i <= to; i++) {
+			Token token = this.tm.get(i);
+			lineBreaks += Math.min(this.tm.countLineBreaksBetween(previousToken, token),
+					this.options.number_of_empty_lines_to_preserve + 1);
+			previousToken = token;
+		}
+		return lineBreaks > this.options.align_fields_grouping_blank_lines;
+	}
+
+	private <N extends ASTNode> void alignNodes(List<N> alignGroup, AlignIndexFinder<N> tokenFinder) {
+		int[] tokenIndexes = alignGroup.stream()
+				.map(tokenFinder::findIndex)
+				.filter(Optional::isPresent)
+				.mapToInt(Optional::get).toArray();
+		OptionalInt maxPosition = IntStream.of(tokenIndexes).map(this.tm::getPositionInLine).max();
+		if (maxPosition.isPresent()) {
+			int align = normalizedAlign(maxPosition.getAsInt());
+			for (int tokenIndex : tokenIndexes)
+				this.tm.get(tokenIndex).setAlign(align);
+		}
+	}
+
+	public void alignComments() {
+		boolean alignLineComments = !this.options.comment_preserve_white_space_between_code_and_line_comments;
+		PositionCounter positionCounter = new PositionCounter();
+		// align comments after field declarations
+		for (List<? extends ASTNode> alignGroup : this.alignGroups) {
+			int maxCommentAlign = 0;
+			for (ASTNode node : alignGroup) {
+				int firstIndexInLine = findFirstTokenInLine(node);
+				int lastIndex = this.tm.lastIndexIn(node, -1) + 1;
+				maxCommentAlign = Math.max(maxCommentAlign,
+						positionCounter.findMaxPosition(firstIndexInLine, lastIndex));
+			}
+			maxCommentAlign = normalizedAlign(maxCommentAlign);
+
+			for (ASTNode node : alignGroup) {
+				int firstIndexInLine = findFirstTokenInLine(node);
+				int lastIndex = this.tm.lastIndexIn(node, -1);
+				lastIndex = Math.min(lastIndex, this.tm.size() - 2);
+				for (int i = firstIndexInLine; i <= lastIndex; i++) {
+					Token token = this.tm.get(i);
+					Token next = this.tm.get(i + 1);
+					boolean lineBreak = token.getLineBreaksAfter() > 0 || next.getLineBreaksBefore() > 0;
+					if (lineBreak) {
+						if (token.tokenType == TokenNameCOMMENT_BLOCK) {
+							token.setAlign(maxCommentAlign);
+						} else if (alignLineComments) {
+							this.tm.addNLSAlignIndex(i, maxCommentAlign);
+						}
+					} else if (next.tokenType == TokenNameCOMMENT_LINE && alignLineComments
+							|| (next.tokenType == TokenNameCOMMENT_BLOCK && i == lastIndex)) {
+						next.setAlign(maxCommentAlign);
+					}
+				}
+			}
+		}
+	}
+
+	private int findFirstTokenInLine(ASTNode node) {
+		if (node instanceof FieldDeclaration) {
+			int typeIndex = this.tm.firstIndexIn(((FieldDeclaration) node).getType(), -1);
+			return this.tm.findFirstTokenInLine(typeIndex);
+		}
+		if (node instanceof VariableDeclarationStatement) {
+			int typeIndex = this.tm.firstIndexIn(((VariableDeclarationStatement) node).getType(), -1);
+			return this.tm.findFirstTokenInLine(typeIndex);
+		}
+		if (node instanceof ExpressionStatement) {
+			return this.tm.firstIndexIn(node, -1);
+		}
+		throw new IllegalArgumentException(node.getClass().getName());
+	}
+
+	private int normalizedAlign(int desiredAlign) {
+		if (this.options.align_with_spaces)
+			return desiredAlign;
+		return this.tm.toIndent(desiredAlign, false);
+	}
+}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.java
index f979ec3..16cacb2 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/CommentWrapExecutor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2018 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.java
index c57ca58..b004b38 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/FieldAligner.java
@@ -1,14 +1,16 @@
 /*******************************************************************************
  * Copyright (c) 2014, 2016 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
- *     Lars Vogel <Lars.Vogel@vogella.com> - Contributions for
- *     						Bug 473178
+ *     Lars Vogel <Lars.Vogel@vogella.com> - Contributions for Bug 473178
  *******************************************************************************/
 package org.aspectj.org.eclipse.jdt.internal.formatter.linewrap;
 
@@ -121,7 +123,7 @@
 			int positionInLine = this.tm.getPositionInLine(nameIndex);
 			maxNameAlign = Math.max(maxNameAlign, positionInLine);
 		}
-		maxNameAlign = this.tm.toIndent(maxNameAlign, false);
+		maxNameAlign = normalizedAlign(maxNameAlign);
 
 		int maxAssignAlign = 0;
 		for (FieldDeclaration declaration : alignGroup) {
@@ -138,7 +140,7 @@
 				maxAssignAlign = Math.max(maxAssignAlign, positionInLine);
 			}
 		}
-		maxAssignAlign = this.tm.toIndent(maxAssignAlign, false);
+		maxAssignAlign = normalizedAlign(maxAssignAlign);
 
 		for (FieldDeclaration declaration : alignGroup) {
 			List<VariableDeclarationFragment> fragments = declaration.fragments();
@@ -166,7 +168,7 @@
 				maxCommentAlign = Math.max(maxCommentAlign,
 						positionCounter.findMaxPosition(firstIndexInLine, lastIndex));
 			}
-			maxCommentAlign = this.tm.toIndent(maxCommentAlign, false);
+			maxCommentAlign = normalizedAlign(maxCommentAlign);
 
 			for (FieldDeclaration declaration : alignGroup) {
 				int typeIndex = this.tm.firstIndexIn(declaration.getType(), -1);
@@ -191,4 +193,10 @@
 			}
 		}
 	}
+
+	private int normalizedAlign(int desiredAlign) {
+		if (this.options.align_with_spaces)
+			return desiredAlign;
+		return this.tm.toIndent(desiredAlign, false);
+	}
 }
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.java
index 22af76f..9f0b571 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapExecutor.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2014, 2015 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2014, 2018 Mateusz Matela and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -15,6 +18,7 @@
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameCOMMENT_BLOCK;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameCOMMENT_JAVADOC;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameCOMMENT_LINE;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameWHITESPACE;
 
 import java.util.ArrayDeque;
 import java.util.ArrayList;
@@ -334,7 +338,9 @@
 				// (these are currently in a future line comment but will be removed)
 				structure.addAll(this.nlsTags);
 
-				if (structure.isEmpty()) { // all the tags have been moved to other lines
+				if (structure.isEmpty()
+						|| (structure.size() == 1 && structure.get(0).tokenType == TokenNameWHITESPACE)) {
+					// all the tags have been moved to other lines
 					WrapExecutor.this.tm.remove(index);
 					structureChanged();
 				}
@@ -649,7 +655,8 @@
 		if (policy.indentOnColumn) {
 			wrapIndent = this.tm.getPositionInLine(policy.wrapParentIndex);
 			wrapIndent += this.tm.getLength(wrapParent, wrapIndent);
-			if (wrapParent.isSpaceAfter() || this.tm.get(policy.wrapParentIndex + 1).isSpaceBefore())
+			Token next = this.tm.get(policy.wrapParentIndex + 1);
+			if (wrapParent.isSpaceAfter() || (next.isSpaceBefore() && !next.isComment()))
 				wrapIndent++;
 		}
 		wrapIndent += policy.extraIndent;
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.java
index 36d263d..b7f4d19 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/linewrap/WrapPreparator.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
- * Copyright (c) 2014, 2016 Mateusz Matela and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ * Copyright (c) 2014, 2018 Mateusz Matela and others.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     Mateusz Matela <mateusz.matela@gmail.com> - [formatter] Formatter does not format Java code correctly, especially when max line width is set - https://bugs.eclipse.org/303519
@@ -27,6 +30,7 @@
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameRPAREN;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameSEMICOLON;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameStringLiteral;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameenum;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameextends;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameimplements;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameIdentifier;
@@ -35,6 +39,7 @@
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNamethis;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNamethrows;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNameto;
+import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNamewhile;
 import static org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens.TokenNamewith;
 
 import java.util.ArrayList;
@@ -55,6 +60,8 @@
 import org.aspectj.org.eclipse.jdt.core.dom.ConditionalExpression;
 import org.aspectj.org.eclipse.jdt.core.dom.ConstructorInvocation;
 import org.aspectj.org.eclipse.jdt.core.dom.CreationReference;
+import org.aspectj.org.eclipse.jdt.core.dom.DoStatement;
+import org.aspectj.org.eclipse.jdt.core.dom.EnhancedForStatement;
 import org.aspectj.org.eclipse.jdt.core.dom.EnumConstantDeclaration;
 import org.aspectj.org.eclipse.jdt.core.dom.EnumDeclaration;
 import org.aspectj.org.eclipse.jdt.core.dom.ExportsDirective;
@@ -92,6 +99,7 @@
 import org.aspectj.org.eclipse.jdt.core.dom.VariableDeclaration;
 import org.aspectj.org.eclipse.jdt.core.dom.VariableDeclarationFragment;
 import org.aspectj.org.eclipse.jdt.core.dom.VariableDeclarationStatement;
+import org.aspectj.org.eclipse.jdt.core.dom.WhileStatement;
 import org.aspectj.org.eclipse.jdt.core.formatter.CodeFormatter;
 import org.aspectj.org.eclipse.jdt.internal.formatter.DefaultCodeFormatterOptions;
 import org.aspectj.org.eclipse.jdt.internal.formatter.DefaultCodeFormatterOptions.Alignment;
@@ -170,7 +178,7 @@
 	final DefaultCodeFormatterOptions options;
 	final int kind;
 
-	final FieldAligner fieldAligner;
+	final Aligner aligner;
 
 	int importsStart = -1, importsEnd = -1;
 
@@ -192,7 +200,7 @@
 		this.options = options;
 		this.kind = kind;
 
-		this.fieldAligner = new FieldAligner(this.tm, this.options);
+		this.aligner = new Aligner(this.tm, this.options);
 	}
 
 	@Override
@@ -253,20 +261,20 @@
 		prepareElementsList(node.typeParameters(), TokenNameCOMMA, TokenNameLESS);
 		handleWrap(this.options.alignment_for_type_parameters);
 
-		this.fieldAligner.handleAlign(node.bodyDeclarations());
+		this.aligner.handleAlign(node.bodyDeclarations());
 
 		return true;
 	}
 
 	@Override
 	public boolean visit(AnnotationTypeDeclaration node) {
-		this.fieldAligner.handleAlign(node.bodyDeclarations());
+		this.aligner.handleAlign(node.bodyDeclarations());
 		return true;
 	}
 
 	@Override
 	public boolean visit(AnonymousClassDeclaration node) {
-		this.fieldAligner.handleAlign(node.bodyDeclarations());
+		this.aligner.handleAlign(node.bodyDeclarations());
 		return true;
 	}
 
@@ -328,7 +336,8 @@
 			for (EnumConstantDeclaration constant : enumConstants)
 				this.wrapIndexes.add(this.tm.firstIndexIn(constant, -1));
 			this.wrapParentIndex = (this.options.alignment_for_enum_constants & Alignment.M_INDENT_ON_COLUMN) > 0
-					? this.tm.firstIndexBefore(enumConstants.get(0), TokenNameLBRACE) : this.tm.firstIndexIn(node, -1);
+					? this.tm.firstIndexBefore(enumConstants.get(0), TokenNameLBRACE)
+					: this.tm.firstIndexIn(node, TokenNameenum);
 			this.wrapGroupEnd = constantsEnd = this.tm.lastIndexIn(enumConstants.get(enumConstants.size() - 1), -1);
 			handleWrap(this.options.alignment_for_enum_constants, node);
 		}
@@ -361,7 +370,7 @@
 			handleWrap(this.options.alignment_for_superinterfaces_in_enum_declaration, PREFERRED);
 		}
 
-		this.fieldAligner.handleAlign(node.bodyDeclarations());
+		this.aligner.handleAlign(node.bodyDeclarations());
 
 		return true;
 	}
@@ -377,6 +386,12 @@
 	}
 
 	@Override
+	public boolean visit(Block node) {
+		this.aligner.handleAlign(node);
+		return true;
+	}
+
+	@Override
 	public boolean visit(MethodInvocation node) {
 		handleArguments(node.arguments(), this.options.alignment_for_arguments_in_method_invocation);
 		handleTypeArguments(node.typeArguments());
@@ -645,27 +660,10 @@
 
 	@Override
 	public boolean visit(IfStatement node) {
-		Statement thenStatement = node.getThenStatement();
-		Statement elseStatement = node.getElseStatement();
-		if (!(thenStatement instanceof Block)) {
-			boolean keepThenOnSameLine = this.options.keep_then_statement_on_same_line
-					|| (this.options.keep_simple_if_on_one_line && elseStatement == null);
-			if (keepThenOnSameLine) {
-				this.wrapIndexes.add(this.tm.firstIndexIn(thenStatement, -1));
-				this.wrapParentIndex = this.tm.firstIndexAfter(node.getExpression(), TokenNameRPAREN);
-				this.wrapGroupEnd = this.tm.lastIndexIn(thenStatement, -1);
-				handleWrap(this.options.alignment_for_compact_if, node);
-			}
-		}
-		if (elseStatement != null && !(elseStatement instanceof Block) && !(elseStatement instanceof IfStatement)) {
-			if (this.options.keep_else_statement_on_same_line) {
-				int elseIndex = this.tm.firstIndexIn(elseStatement, -1);
-				this.wrapIndexes.add(elseIndex);
-				this.wrapParentIndex = this.tm.firstIndexAfter(node.getExpression(), TokenNameRPAREN);
-				this.wrapGroupEnd = this.tm.lastIndexIn(elseStatement, -1);
-				handleWrap(this.options.alignment_for_compact_if, node);
-			}
-		}
+		boolean keepThenOnSameLine = this.options.keep_then_statement_on_same_line
+				|| (this.options.keep_simple_if_on_one_line && node.getElseStatement() == null);
+		if (keepThenOnSameLine)
+			handleSimpleLoop(node.getThenStatement(), this.options.alignment_for_compact_if);
 		return true;
 	}
 
@@ -682,12 +680,63 @@
 		if (!this.wrapIndexes.isEmpty()) {
 			this.wrapParentIndex = this.tm.firstIndexIn(node, TokenNameLPAREN);
 			this.wrapGroupEnd = this.tm.firstIndexBefore(node.getBody(), TokenNameRPAREN);
-			handleWrap(this.options.alignment_for_expressions_in_for_loop_header, node);
+			handleWrap(this.options.alignment_for_expressions_in_for_loop_header);
 		}
+		if (this.options.keep_simple_for_body_on_same_line)
+			handleSimpleLoop(node.getBody(), this.options.alignment_for_compact_loop);
 		return true;
 	}
 
 	@Override
+	public boolean visit(EnhancedForStatement node) {
+		if (this.options.keep_simple_for_body_on_same_line)
+			handleSimpleLoop(node.getBody(), this.options.alignment_for_compact_loop);
+		return true;
+	}
+
+	@Override
+	public boolean visit(WhileStatement node) {
+		if (this.options.keep_simple_while_body_on_same_line)
+			handleSimpleLoop(node.getBody(), this.options.alignment_for_compact_loop);
+		return true;
+	}
+
+	private void handleSimpleLoop(Statement body, int wrappingOption) {
+		if (!(body instanceof Block)) {
+			this.wrapIndexes.add(this.tm.firstIndexIn(body, -1));
+			this.wrapParentIndex = this.tm.firstIndexBefore(body, TokenNameRPAREN);
+			this.wrapGroupEnd = this.tm.lastIndexIn(body, -1);
+			handleWrap(wrappingOption, body.getParent());
+
+			body.accept(new ASTVisitor() {
+				@Override
+				public boolean visit(Block node) {
+					forceContinuousWrapping(node, WrapPreparator.this.tm.firstIndexIn(node, -1));
+					return false;
+				}
+			});
+		}
+	}
+
+	@Override
+	public void endVisit(DoStatement node) {
+		if (this.options.keep_simple_do_while_body_on_same_line && !(node.getBody() instanceof Block)) {
+			int whileIndex = this.tm.firstIndexAfter(node.getBody(), TokenNamewhile);
+			this.wrapIndexes.add(whileIndex);
+			this.wrapParentIndex = this.tm.lastIndexIn(node.getBody(), -1);
+			this.wrapGroupEnd = this.tm.lastIndexIn(node, -1);
+
+			int alignment = this.options.alignment_for_compact_loop;
+			for (int i = this.tm.firstIndexIn(node, -1) + 1; i < whileIndex; i++) {
+				Token token = this.tm.get(i);
+				if (token.getLineBreaksBefore() > 0 || token.getLineBreaksAfter() > 0)
+					alignment |= Alignment.M_FORCE;
+			}
+			handleWrap(alignment, node);
+		}
+	}
+
+	@Override
 	public boolean visit(TryStatement node) {
 		prepareElementsList(node.resources(), TokenNameSEMICOLON, TokenNameLPAREN);
 		handleWrap(this.options.alignment_for_resources_in_try);
@@ -817,7 +866,7 @@
 	 * Makes sure all new lines within given node will have wrap policy so that
 	 * wrap executor will fix their indentation if necessary.
 	 */
-	private void forceContinuousWrapping(ASTNode node, int parentIndex) {
+	void forceContinuousWrapping(ASTNode node, int parentIndex) {
 		int parentIndent = this.tm.get(parentIndex).getIndent();
 		int indentChange = -parentIndent;
 		int lineStart = this.tm.findFirstTokenInLine(parentIndex);
@@ -980,9 +1029,13 @@
 			if (!this.options.indent_body_declarations_compare_to_enum_declaration_header)
 				extraIndent--;
 			isAlreadyWrapped = isFirst;
-		} else if (parentNode instanceof IfStatement) {
+		} else if (parentNode instanceof IfStatement || parentNode instanceof ForStatement
+				|| parentNode instanceof EnhancedForStatement || parentNode instanceof WhileStatement) {
 			extraIndent = 1;
 			this.wrapParentIndex = this.tm.firstIndexIn(parentNode, -1); // only if !indoentOnColumn
+		} else if (parentNode instanceof DoStatement) {
+			extraIndent = 0;
+			this.wrapParentIndex = this.tm.firstIndexIn(parentNode, -1); // only if !indoentOnColumn
 		} else if ((wrappingOption & Alignment.M_INDENT_BY_ONE) != 0) {
 			extraIndent = 1;
 		} else if (parentNode instanceof ArrayInitializer) {
@@ -1031,7 +1084,7 @@
 		preserveExistingLineBreaks();
 		applyBreaksOutsideRegions(regions);
 		new WrapExecutor(this.tm, this.options).executeWraps();
-		this.fieldAligner.alignComments();
+		this.aligner.alignComments();
 		wrapComments();
 		fixEnumConstantIndents(astRoot);
 	}
diff --git a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.java b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.java
index 3568821..2c66143 100644
--- a/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.java
+++ b/org.aspectj.ajde/source/org/aspectj/org/eclipse/jdt/internal/formatter/old/CodeFormatter.java
@@ -1,9 +1,12 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2013 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
  * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
  *
  * Contributors:
  *     IBM Corporation - initial API and implementation
diff --git a/org.aspectj.ajde/source/org/aspectj/tools/ant/taskdefs/AjcTask.java b/org.aspectj.ajde/source/org/aspectj/tools/ant/taskdefs/AjcTask.java
index 93f93ef..fe6be92 100644
--- a/org.aspectj.ajde/source/org/aspectj/tools/ant/taskdefs/AjcTask.java
+++ b/org.aspectj.ajde/source/org/aspectj/tools/ant/taskdefs/AjcTask.java
@@ -254,9 +254,9 @@
 
 	public static final String COMMAND_EDITOR_NAME = AjcTask.class.getName() + ".COMMAND_EDITOR";
 
-	static final String[] TARGET_INPUTS = new String[] { "1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "9", "10" };
-	static final String[] SOURCE_INPUTS = new String[] { "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "9", "10" };
-	static final String[] COMPLIANCE_INPUTS = new String[] { "-1.3", "-1.4", "-1.5", "-1.6", "-1.7", "-1.8", "-1.9", "-9", "-10" };
+	static final String[] TARGET_INPUTS = new String[] { "1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "9", "10", "11" };
+	static final String[] SOURCE_INPUTS = new String[] { "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "9", "10", "11"};
+	static final String[] COMPLIANCE_INPUTS = new String[] { "-1.3", "-1.4", "-1.5", "-1.6", "-1.7", "-1.8", "-1.9", "-9", "-10", "-11" };
 
 	private static final ICommandEditor COMMAND_EDITOR;
 
diff --git a/org.aspectj.runtime/source/org/aspectj/lang/Aspects14.java b/org.aspectj.runtime/source/org/aspectj/lang/Aspects14.java
index d2ae3e0..b7f3a3a 100644
--- a/org.aspectj.runtime/source/org/aspectj/lang/Aspects14.java
+++ b/org.aspectj.runtime/source/org/aspectj/lang/Aspects14.java
@@ -12,9 +12,9 @@
 package org.aspectj.lang;
 
 
+import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
-import java.lang.reflect.InvocationTargetException;
 
 /**
  * For users working on a level of Java prior to Java5, Aspects14 handles generic aspectOf methods when they 
@@ -36,8 +36,8 @@
     /**
      * Returns the singleton aspect or the percflow / percflowbelow associated with the current thread
      *
-     * @param aspectClass
-     * @return
+     * @param aspectClass aspect class for which to discover the aspect instance
+     * @return an aspect instance
      * @throws NoAspectBoundException if no such aspect
      */
     public static Object aspectOf(Class aspectClass) throws NoAspectBoundException {
@@ -53,9 +53,9 @@
 
     /**
      * Returns the perthis / pertarget aspect
-     * @param aspectClass
-     * @param perObject
-     * @return
+     * @param aspectClass aspect class for which to discover the aspect instance
+     * @param perObject object for which to discover the aspect instance
+     * @return an aspect instance
      * @throws NoAspectBoundException if no such aspect, or no aspect bound
      */
     public static Object aspectOf(Class aspectClass, Object perObject) throws NoAspectBoundException {
@@ -71,7 +71,7 @@
 
     /**
      * Returns the pertypewithin aspect
-     * @param aspectClass
+     * @param aspectClass aspect class for which to discover the aspect instance
      * @param perTypeWithin class
      * @return
      * @throws NoAspectBoundException if no such aspect, or no aspect bound
@@ -90,7 +90,7 @@
     /**
      * Returns true if singleton aspect or percflow / percflowbelow aspect is bound
      *
-     * @param aspectClass
+     * @param aspectClass aspect class for which to check the aspect instance
      * @return
      * @throws NoAspectBoundException if not bound
      */
@@ -104,9 +104,9 @@
 
     /**
      * Returns true if the perthis / pertarget aspect is bound
-     * @param aspectClass
+     * @param aspectClass aspect class for which to check the aspect instance
      * @param perObject
-     * @return
+     * @return true if aspect instance exists for the class/object combination
      * @throws NoAspectBoundException if not bound
      */
     public static boolean hasAspect(Class aspectClass, Object perObject) throws NoAspectBoundException {
@@ -119,9 +119,9 @@
 
     /**
      * Returns true if the pertypewithin aspect is bound
-     * @param aspectClass
+     * @param aspectClass aspect class for which to check the aspect instance
      * @param perTypeWithin class
-     * @return
+     * @return true if aspect instance exists for this aspect class/pertypewithin class combination
      * @throws NoAspectBoundException if not bound
      */
     public static boolean hasAspect(Class aspectClass, Class perTypeWithin) throws NoAspectBoundException {
diff --git a/org.aspectj.weaver/classes/META-INF/MANIFEST.MF b/org.aspectj.weaver/classes/META-INF/MANIFEST.MF
index 52757ef..d01e783 100644
--- a/org.aspectj.weaver/classes/META-INF/MANIFEST.MF
+++ b/org.aspectj.weaver/classes/META-INF/MANIFEST.MF
@@ -2,10 +2,10 @@
 Automatic-Module-Name: org.aspectj.weaver
 Name: org/aspectj/weaver/
 Specification-Title: AspectJ Weaver Classes
-Specification-Version: DEVELOPMENT
+Specification-Version: 1.9.2.RC3
 Specification-Vendor: aspectj.org
 Implementation-Title: org.aspectj.weaver
-Implementation-Version: DEVELOPMENT
+Implementation-Version: 1.9.2.RC3
 Implementation-Vendor: aspectj.org
 Premain-Class: org.aspectj.weaver.loadtime.Agent
 Agent-Class: org.aspectj.weaver.loadtime.Agent
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationVisitor.class
index 5aef756..26e8cab 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationWriter.class
index 9189fc5..eb417c0 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/AnnotationWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute$Set.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute$Set.class
index f5946af..c20240f 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute$Set.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute$Set.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute.class
index bb1c613..909ae02 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Attribute.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ByteVector.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ByteVector.class
index e729a1b..000ad2d 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ByteVector.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ByteVector.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassReader.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassReader.class
index 63f7196..386a1db 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassReader.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassReader.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassTooLargeException.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassTooLargeException.class
new file mode 100644
index 0000000..ba5c66f
--- /dev/null
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassTooLargeException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassVisitor.class
index 5ae51d9..7fba970 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassWriter.class
index b8319a2..61a08d3 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ClassWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ConstantDynamic.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ConstantDynamic.class
new file mode 100644
index 0000000..fc7c418
--- /dev/null
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ConstantDynamic.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Constants.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Constants.class
index 2e1b830..387983e 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Constants.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Constants.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Context.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Context.class
index 0f91394..31bce39 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Context.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Context.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldVisitor.class
index 76f5464..ae61a6e 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldWriter.class
index cc8e192..19ff607 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/FieldWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Frame.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Frame.class
index 69ac64e..f7ba57d 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Frame.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Frame.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Handle.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Handle.class
index 4d583f2..56c1ab8 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Handle.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Handle.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Label.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Label.class
index d1fb9c5..102d1cc 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Label.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Label.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodTooLargeException.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodTooLargeException.class
new file mode 100644
index 0000000..ec14f4b
--- /dev/null
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodTooLargeException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodVisitor.class
index 18ceda9..253068a 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodWriter.class
index 1ea8aed..55c9ab9 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/MethodWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleVisitor.class
index ce79cde..fb491e2 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleWriter.class
index 6d43c92..a4897c7 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/ModuleWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Opcodes.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Opcodes.class
index 121b768..aab9caf 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Opcodes.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Opcodes.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Symbol.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Symbol.class
index f1dd475..58f7576 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Symbol.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Symbol.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable$Entry.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable$Entry.class
index 95f3053..af27ed3 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable$Entry.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable$Entry.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable.class
index e1ef847..d783bb5 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/SymbolTable.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Type.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Type.class
index a8b771c..5d51f57 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/Type.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/Type.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/TypePath.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/TypePath.class
index f8be697..409d04c 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/TypePath.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/TypePath.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureVisitor.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureVisitor.class
index 59359a4..6ab781e 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureVisitor.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureWriter.class b/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureWriter.class
index 4a7f9ac..deb7a42 100644
--- a/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureWriter.class
+++ b/org.aspectj.weaver/classes/aj/org/objectweb/asm/signature/SignatureWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/Constants.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/Constants.class
index e7927f4..df14d9b 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/Constants.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/Constants.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Attribute.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Attribute.class
index 934a4fd..037072b 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Attribute.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Attribute.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ClassVisitor.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ClassVisitor.class
index 2d1a292..e97e17d 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ClassVisitor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ClassVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Constant.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Constant.class
index b02d4c2..f2f6f11 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Constant.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/Constant.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ConstantDynamic.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ConstantDynamic.class
new file mode 100644
index 0000000..2431c76
--- /dev/null
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/ConstantDynamic.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestHost.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestHost.class
new file mode 100644
index 0000000..9bf3893
--- /dev/null
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestHost.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestMembers.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestMembers.class
new file mode 100644
index 0000000..df3126c
--- /dev/null
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/classfile/NestMembers.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/InstructionList$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/InstructionList$1.class
index 6a011b8..c079401 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/InstructionList$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/InstructionList$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$1.class
index 14be1a8..4e35b1b 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$2.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$2.class
index 00a1b19..8935823 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$2.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/generic/Type$2.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$1.class
index b33bb8c..fafb0da 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Dir$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Dir$1.class
index d8bd638..8157bd9 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Dir$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Dir$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$JImage$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$JImage$1.class
index e911c44..cec13ee 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$JImage$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$JImage$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Zip$1.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Zip$1.class
index c73377f..81be3e5 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Zip$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath$Zip$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath.class b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath.class
index 8b9fe5c..e398c13 100644
--- a/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath.class
+++ b/org.aspectj.weaver/classes/org/aspectj/apache/bcel/util/ClassPath.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/bridge/Version.class b/org.aspectj.weaver/classes/org/aspectj/bridge/Version.class
index a12b321..e57cce7 100644
--- a/org.aspectj.weaver/classes/org/aspectj/bridge/Version.class
+++ b/org.aspectj.weaver/classes/org/aspectj/bridge/Version.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$1.class b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$1.class
index dac59d8..2146172 100644
--- a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$Thrown.class b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$Thrown.class
index 2819789..7fc6dcb 100644
--- a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$Thrown.class
+++ b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController$Thrown.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController.class b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController.class
index f6091bd..200e744 100644
--- a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController.class
+++ b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$ProcessController.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$StringChecker.class b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$StringChecker.class
index 122a5ca..e2583eb 100644
--- a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$StringChecker.class
+++ b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil$StringChecker.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil.class b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil.class
index 8954941..c87b660 100644
--- a/org.aspectj.weaver/classes/org/aspectj/util/LangUtil.class
+++ b/org.aspectj.weaver/classes/org/aspectj/util/LangUtil.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/AjcMemberMaker.class b/org.aspectj.weaver/classes/org/aspectj/weaver/AjcMemberMaker.class
index 9ce8374..289c135 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/AjcMemberMaker.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/AjcMemberMaker.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/Dump.class b/org.aspectj.weaver/classes/org/aspectj/weaver/Dump.class
index 7eb939c..a6aee29 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/Dump.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/Dump.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$1.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$1.class
index 8d57758..4698c72 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeFieldStruct.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeFieldStruct.class
index 5db8662..e55871c 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeFieldStruct.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeFieldStruct.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeMethodStruct.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeMethodStruct.class
index 52a2df1..1a48414 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeMethodStruct.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeMethodStruct.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeStruct.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeStruct.class
index 72c8d14..9fd1c68 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeStruct.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$AjAttributeStruct.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$LazyResolvedPointcutDefinition.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$LazyResolvedPointcutDefinition.class
index 56458c5..2fd4409 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$LazyResolvedPointcutDefinition.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$LazyResolvedPointcutDefinition.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$MethodArgument.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$MethodArgument.class
index 5aa8e13..2d0b854 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$MethodArgument.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$MethodArgument.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ReturningFormalNotDeclaredInAdviceSignatureException.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ReturningFormalNotDeclaredInAdviceSignatureException.class
index 6227b3c..5cbf9e2 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ReturningFormalNotDeclaredInAdviceSignatureException.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ReturningFormalNotDeclaredInAdviceSignatureException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ThrownFormalNotDeclaredInAdviceSignatureException.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ThrownFormalNotDeclaredInAdviceSignatureException.class
index ba266ec..1e2154a 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ThrownFormalNotDeclaredInAdviceSignatureException.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$ThrownFormalNotDeclaredInAdviceSignatureException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$UnreadableDebugInfoException.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$UnreadableDebugInfoException.class
index 1276da8..0ecb336 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$UnreadableDebugInfoException.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes$UnreadableDebugInfoException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes.class
index 458a8f7..19b031d 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/AtAjAttributes.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelMethod.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelMethod.class
index b256066..7039bff 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelMethod.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelMethod.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelShadow.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelShadow.class
index 3383d3d..948c20e 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelShadow.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/BcelShadow.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ByteBasedClassFile.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ByteBasedClassFile.class
index 8138d7b..048caf2 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ByteBasedClassFile.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ByteBasedClassFile.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ClassFile.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ClassFile.class
index c2e3131..0ecef19 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ClassFile.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ClassFile.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$DirEntry.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$DirEntry.class
index 5f9483c..341a412 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$DirEntry.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$DirEntry.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$Entry.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$Entry.class
index 877b52f..7c788de 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$Entry.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$Entry.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$FileClassFile.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$FileClassFile.class
index 70b0cb4..7e83a0a 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$FileClassFile.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$FileClassFile.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$PackageCacheBuilderVisitor.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$PackageCacheBuilderVisitor.class
index 03ee5c2..85172fa 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$PackageCacheBuilderVisitor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$PackageCacheBuilderVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$TypeIdentifier.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$TypeIdentifier.class
index a25f24f..2ebc85e 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$TypeIdentifier.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry$TypeIdentifier.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry.class
index 7618a0c..0176dd7 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$JImageEntry.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipEntryClassFile.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipEntryClassFile.class
index abcd4b6..edc5ccb 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipEntryClassFile.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipEntryClassFile.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipFileEntry.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipFileEntry.class
index 46971b2..3f1f024 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipFileEntry.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager$ZipFileEntry.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager.class
index 35f0df3..4969e29 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/ClassPathManager.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/Utility.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/Utility.class
index e4951c7..9961772 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/Utility.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/Utility.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor$AJMethodVisitor.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor$AJMethodVisitor.class
index 240088d..65951a9 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor$AJMethodVisitor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor$AJMethodVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor.class b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor.class
index 18d1946..f00d193 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/bcel/asm/StackMapAdder$AspectJClassVisitor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.class b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.class
index 208b3bb..153f862 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.class b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.class
index 88bb553..9852661 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.class b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.class
index d90ef60..bbdb8ef 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/ltw/LTWWorld.class b/org.aspectj.weaver/classes/org/aspectj/weaver/ltw/LTWWorld.class
index dcaf7ac..1d5651f 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/ltw/LTWWorld.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/ltw/LTWWorld.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AndTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AndTypePattern.class
index dd47607..9535632 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AndTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AndTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnnotationPointcut.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnnotationPointcut.class
index 7247768..8c499d3 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnnotationPointcut.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnnotationPointcut.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.class
index 820625e..d722eb0 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyTypePattern.class
index 88bdd40..429322a 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/AnyTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.class
index 402a03c..6cb6f36 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/CflowPointcut.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/CflowPointcut.class
index de7f69a..337b71d 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/CflowPointcut.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/CflowPointcut.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.class
index 6e9d116..ae6aa0a 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/KindedPointcut.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/KindedPointcut.class
index f143b53..417958a 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/KindedPointcut.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/KindedPointcut.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NoTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NoTypePattern.class
index 389ea55..2288e36 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NoTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NoTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotPointcut.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotPointcut.class
index 88a1497..4044812 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotPointcut.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotPointcut.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotTypePattern.class
index 410f4bf..0082d71 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/NotTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ParserException.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ParserException.class
index f7ddfd3..cb32d61 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ParserException.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/ParserException.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/PerCflow.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/PerCflow.class
index bb227f0..5b6c206 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/PerCflow.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/PerCflow.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/WildAnnotationTypePattern.class b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/WildAnnotationTypePattern.class
index 8073866..3492418 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/WildAnnotationTypePattern.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/patterns/WildAnnotationTypePattern.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$1.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$1.class
index d877a6f..6b14a47 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageHolder.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageHolder.class
index a82d8ea..f163090 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageHolder.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageHolder.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageWriter.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageWriter.class
index f77d9a5..300d47c 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageWriter.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingAdaptorMessageWriter.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider$1.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider$1.class
index 99641d0..f677dbc 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider$1.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider$1.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider.class
index 5395012..f764500 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor$WeavingClassFileProvider.class
Binary files differ
diff --git a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor.class b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor.class
index 658eec3..55eb586 100644
--- a/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor.class
+++ b/org.aspectj.weaver/classes/org/aspectj/weaver/tools/WeavingAdaptor.class
Binary files differ
diff --git a/org.aspectj.weaver/source/org/aspectj/bridge/Version.java b/org.aspectj.weaver/source/org/aspectj/bridge/Version.java
index d9a5051..3c06b9b 100644
--- a/org.aspectj.weaver/source/org/aspectj/bridge/Version.java
+++ b/org.aspectj.weaver/source/org/aspectj/bridge/Version.java
@@ -30,14 +30,14 @@
     public static final long NOTIME = 0L;
     
     /** set by build script */
-    public static final String text = "DEVELOPMENT";
+    public static final String text = "1.9.2.RC3";
     // VersionUptodate.java scans for "static final String text = "
     
     /** 
       * Time text set by build script using SIMPLE_DATE_FORMAT.
       * (if DEVELOPMENT version, invalid)
       */
-    public static final String time_text = "Monday May 28, 2018 at 16:29:59 GMT";
+    public static final String time_text = "Thursday Oct 11, 2018 at 23:16:13 GMT";
 
     /** 
       * time in seconds-since-... format, used by programmatic clients.
diff --git a/org.aspectj.weaver/source/org/aspectj/util/LangUtil.java b/org.aspectj.weaver/source/org/aspectj/util/LangUtil.java
index ad83a4e..82bd942 100644
--- a/org.aspectj.weaver/source/org/aspectj/util/LangUtil.java
+++ b/org.aspectj.weaver/source/org/aspectj/util/LangUtil.java
@@ -157,6 +157,10 @@
 		return 10 <= vmVersion;
 	}
 
+	public static boolean is11VMOrGreater() {
+		return 11 <= vmVersion;
+	}
+
 	/**
 	 * Shorthand for "if null, throw IllegalArgumentException"
 	 * 
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/AjcMemberMaker.java b/org.aspectj.weaver/source/org/aspectj/weaver/AjcMemberMaker.java
index 1870eb5..b8e3043 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/AjcMemberMaker.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/AjcMemberMaker.java
@@ -9,13 +9,10 @@
  * Contributors: 
  *     PARC     initial implementation 
  * ******************************************************************/
-
 package org.aspectj.weaver;
 
 import java.lang.reflect.Modifier;
 
-//import org.aspectj.weaver.ResolvedType.Name;
-
 /**
  * The AjcMemberMaker is responsible for creating the representations of methods/fields/etc that are placed in both aspects and
  * affected target types. It uses the NameMangler class to create the actual names that will be used.
@@ -69,7 +66,7 @@
 	}
 
 	public static ResolvedMember perCflowField(UnresolvedType declaringType) {
-		return new ResolvedMemberImpl(Member.FIELD, declaringType, PUBLIC_STATIC_FINAL, NameMangler.PERCFLOW_FIELD_NAME,
+		return new ResolvedMemberImpl(Member.FIELD, declaringType, PUBLIC_STATIC, NameMangler.PERCFLOW_FIELD_NAME,
 				CFLOW_STACK_TYPE.getSignature());
 	}
 
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/AtAjAttributes.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/AtAjAttributes.java
index dbb81b5..19170b5 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/AtAjAttributes.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/AtAjAttributes.java
@@ -98,6 +98,8 @@
 	private final static String THROWING = "throwing";
 	private final static String RETURNING = "returning";
 	private final static String STRING_DESC = "Ljava/lang/String;";
+	private final static String ASPECTJ_ANNOTATION_PACKAGE = "org.aspectj.lang.annotation";
+	private final static char PACKAGE_INITIAL_CHAR = ASPECTJ_ANNOTATION_PACKAGE.charAt(0);
 
 	/**
 	 * A struct that allows to add extra arguments without always breaking the API
@@ -193,8 +195,8 @@
 	 */
 	public static List<AjAttribute> readAj5ClassAttributes(AsmManager model, JavaClass javaClass, ReferenceType type,
 			ISourceContext context, IMessageHandler msgHandler, boolean isCodeStyleAspect) {
-		boolean ignoreThisClass = javaClass.getClassName().charAt(0) == 'o'
-				&& javaClass.getClassName().startsWith("org.aspectj.lang.annotation");
+		boolean ignoreThisClass = javaClass.getClassName().charAt(0) == PACKAGE_INITIAL_CHAR
+				&& javaClass.getClassName().startsWith(ASPECTJ_ANNOTATION_PACKAGE);
 		if (ignoreThisClass) {
 			return NO_ATTRIBUTES;
 		}
@@ -205,7 +207,7 @@
 			Constant constant = cpool[i];
 			if (constant != null && constant.getTag() == Constants.CONSTANT_Utf8) {
 				String constantValue = ((ConstantUtf8) constant).getValue();
-				if (constantValue.length() > 28 && constantValue.charAt(1) == 'o') {
+				if (constantValue.length() > 28 && constantValue.charAt(1) == PACKAGE_INITIAL_CHAR) {
 					if (constantValue.startsWith("Lorg/aspectj/lang/annotation")) {
 						containsAnnotationClassReference = true;
 						if ("Lorg/aspectj/lang/annotation/DeclareAnnotation;".equals(constantValue)) {
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelMethod.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelMethod.java
index 4d8114e..d1e60e1 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelMethod.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelMethod.java
@@ -51,6 +51,9 @@
 //public final 
 class BcelMethod extends ResolvedMemberImpl {
 
+  private final static String ASPECTJ_ANNOTATION_PACKAGE = "org.aspectj.lang.annotation";
+  private final static char PACKAGE_INITIAL_CHAR = ASPECTJ_ANNOTATION_PACKAGE.charAt(0);
+
 	private Method method;
 
 	// these fields are not set for many BcelMethods...
@@ -141,7 +144,7 @@
 				for (int i = 0; i < axs.length; i++) {
 					AnnotationAJ annotationX = axs[i];
 					String typename = annotationX.getTypeName();
-					if (typename.charAt(0) == 'o') {
+					if (typename.charAt(0) == PACKAGE_INITIAL_CHAR) {
 						if (typename.equals("org.aspectj.lang.annotation.Pointcut")
 								|| typename.equals("org.aspectj.lang.annotation.Before")
 								|| typename.equals("org.aspectj.lang.annotation.Around")
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelShadow.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelShadow.java
index 2e8d3ab..c93a0f2 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelShadow.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/BcelShadow.java
@@ -2941,7 +2941,7 @@
 			closureInstantiation.append(fact.createConstant(Integer.valueOf(bitflags)));
 			closureInstantiation.append(Utility.createInvoke(getFactory(), getWorld(),
 					new MemberImpl(Member.METHOD, UnresolvedType.forName("org.aspectj.runtime.internal.AroundClosure"),
-							Modifier.PUBLIC, "linkClosureAndJoinPoint", "(I)Lorg/aspectj/lang/ProceedingJoinPoint;")));
+							Modifier.PUBLIC, "linkClosureAndJoinPoint", String.format("%s%s", "(I)", "Lorg/aspectj/lang/ProceedingJoinPoint;"))));
 		}
 
 		InstructionList advice = new InstructionList();
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/ClassPathManager.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/ClassPathManager.java
index 14fb6e9..f8a36ba 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/ClassPathManager.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/ClassPathManager.java
@@ -153,6 +153,7 @@
 		return null;
 	}
 
+	@Override
 	public String toString() {
 		StringBuffer buf = new StringBuffer();
 		boolean start = true;
@@ -220,11 +221,13 @@
 			this.file = file;
 		}
 
+		@Override
 		public InputStream getInputStream() throws IOException {
 			fis = new FileInputStream(file);
 			return fis;
 		}
 
+		@Override
 		public void close() {
 			try {
 				if (fis != null)
@@ -236,6 +239,7 @@
 			}
 		}
 
+		@Override
 		public String getPath() {
 			return file.getPath();
 		}
@@ -252,6 +256,7 @@
 			this.dirPath = dirPath;
 		}
 
+		@Override
 		public ClassFile find(String name) {
 			File f = new File(dirPath + File.separator + name.replace('.', File.separatorChar) + ".class");
 			if (f.isFile())
@@ -260,6 +265,7 @@
 				return null;
 		}
 
+		@Override
 		public String toString() {
 			return dirPath;
 		}
@@ -275,11 +281,13 @@
 			this.entry = entry;
 		}
 
+		@Override
 		public InputStream getInputStream() throws IOException {
 			is = zipFile.getZipFile().getInputStream(entry);
 			return is;
 		}
 
+		@Override
 		public void close() {
 			try {
 				if (is != null)
@@ -291,6 +299,7 @@
 			}
 		}
 
+		@Override
 		public String getPath() {
 			return entry.getName();
 		}
@@ -307,7 +316,7 @@
 	 */
 	static class JImageEntry extends Entry {
 		
-		private final static FileSystem fs = FileSystems.getFileSystem(JRT_URI);
+		private static FileSystem fs = null;
 		
 		private final static Map<String, Path> fileCache = new SoftHashMap<String, Path>();
 
@@ -316,6 +325,13 @@
 		private static boolean packageCacheInitialized = false;
 
 		public JImageEntry() {
+			if (fs == null) {
+				try {
+					fs = FileSystems.getFileSystem(JRT_URI);
+				} catch (Throwable t) {
+					throw new IllegalStateException("Unexpectedly unable to initialize a JRT filesystem", t);
+				}
+			}
 			buildPackageMap();
 		}
 		
@@ -394,6 +410,7 @@
 			return locator.found;
  		}
 
+		@Override
 		public ClassFile find(String name) throws IOException {
 			String fileName = name.replace('.', '/') + ".class";
 			Path file = fileCache.get(fileName);
@@ -448,6 +465,7 @@
 			return zipFile;
 		}
 
+		@Override
 		public ClassFile find(String name) throws IOException {
 			ensureOpen();
 			String key = name.replace('.', '/') + ".class";
@@ -502,7 +520,7 @@
 
 		public void closeSomeArchives(int n) {
 			for (int i = n - 1; i >= 0; i--) {
-				ZipFile zf = (ZipFile) openArchives.get(i);
+				ZipFile zf = openArchives.get(i);
 				try {
 					zf.close();
 				} catch (IOException e) {
@@ -525,6 +543,7 @@
 			}
 		}
 
+		@Override
 		public String toString() {
 			return file.getName();
 		}
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/Utility.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/Utility.java
index cd1fd4a..4acf032 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/Utility.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/Utility.java
@@ -65,6 +65,8 @@
 
 public class Utility {
 
+  private final static char PACKAGE_INITIAL_CHAR = AjAttribute.AttributePrefix.charAt(0);
+
 	public static List<AjAttribute> readAjAttributes(String classname, Attribute[] as, ISourceContext context, World w,
 			AjAttribute.WeaverVersionInfo version, ConstantPoolReader dataDecompressor) {
 		List<AjAttribute> attributes = new ArrayList<AjAttribute>();
@@ -76,7 +78,7 @@
 			if (a instanceof Unknown) {
 				Unknown u = (Unknown) a;
 				String name = u.getName();
-				if (name.charAt(0) == 'o') { // 'o'rg.aspectj
+				if (name.charAt(0) == PACKAGE_INITIAL_CHAR) { // 'o'rg.aspectj
 					if (name.startsWith(AjAttribute.AttributePrefix)) {
 						if (name.endsWith(WeaverVersionInfo.AttributeName)) {
 							version = (AjAttribute.WeaverVersionInfo) AjAttribute.read(version, name, u.getBytes(), context, w,
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/asm/StackMapAdder.java b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/asm/StackMapAdder.java
index d7932c8..dd3965b 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/bcel/asm/StackMapAdder.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/bcel/asm/StackMapAdder.java
@@ -54,7 +54,7 @@
 	private static class AspectJClassVisitor extends ClassVisitor {
 
 		public AspectJClassVisitor(ClassVisitor classwriter) {
-			super(Opcodes.ASM5, classwriter);
+			super(Opcodes.ASM7, classwriter);
 		}
 
 		@Override
@@ -67,7 +67,7 @@
 		// created by a ClassWriter (see top level class comment)
 		static class AJMethodVisitor extends MethodVisitor {
 			public AJMethodVisitor(MethodVisitor mv) {
-				super(Opcodes.ASM5,mv);
+				super(Opcodes.ASM7,mv);
 			}
 		}
 		
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.java b/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.java
index 6fa259d..b22f870 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.java
@@ -11,7 +11,12 @@
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.lang.invoke.MethodHandle;
+import java.lang.invoke.MethodHandles;
+import java.lang.invoke.MethodHandles.Lookup;
+import java.lang.invoke.MethodType;
 import java.lang.reflect.Field;
+import java.lang.reflect.Method;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.security.ProtectionDomain;
@@ -1043,49 +1048,145 @@
 		return unsafe;
     }
 	
-	private void defineClass(ClassLoader loader, String name, byte[] bytes) {
+	private static Method bindTo_Method, invokeWithArguments_Method = null;
+	private static Object defineClassMethodHandle = null;
+	
+	private static Boolean initializedForJava11 = false;
+	
+	// In order to let this code compile on earlier versions of Java (8), use reflection to discover the elements
+	// we need to define classes.
+	private static synchronized void initializeForJava11() {
+		if (initializedForJava11) return;
+		try {
+			// MethodType defineClassMethodType = MethodType.methodType(Class.class, new Class[]{String.class, byte[].class, int.class, int.class});
+			Class<?> methodType_Class = Class.forName("java.lang.invoke.MethodType");
+			Method methodTypeMethodOnMethodTypeClass = methodType_Class.getDeclaredMethod("methodType", Class.class,Class[].class);
+			methodTypeMethodOnMethodTypeClass.setAccessible(true);
+			Object defineClassMethodType = methodTypeMethodOnMethodTypeClass.invoke(null, Class.class, new Class[] {String.class,byte[].class,int.class,int.class});
+
+			// MethodHandles.Lookup methodHandlesLookup = MethodHandles.lookup();
+			Class<?> methodHandles_Class = Class.forName("java.lang.invoke.MethodHandles");
+			Method lookupMethodOnMethodHandlesClass = methodHandles_Class.getDeclaredMethod("lookup");
+			lookupMethodOnMethodHandlesClass.setAccessible(true);			
+			Object methodHandlesLookup = lookupMethodOnMethodHandlesClass.invoke(null);
+			
+			// MethodHandles.Lookup lookup = MethodHandles.privateLookupIn(ClassLoader.class, baseLookup);
+			Class<?> methodHandlesLookup_Class = Class.forName("java.lang.invoke.MethodHandles$Lookup");
+			Method privateLookupMethodOnMethodHandlesClass = methodHandles_Class.getDeclaredMethod("privateLookupIn",Class.class,methodHandlesLookup_Class);
+			privateLookupMethodOnMethodHandlesClass.setAccessible(true);
+			Object lookup = privateLookupMethodOnMethodHandlesClass.invoke(null, ClassLoader.class, methodHandlesLookup);
+			
+			// MethodHandle defineClassMethodHandle = lookup.findVirtual(ClassLoader.class, "defineClass", defineClassMethodType);
+			Method findVirtual_Method = methodHandlesLookup_Class.getDeclaredMethod("findVirtual", Class.class,String.class,methodType_Class);
+			findVirtual_Method.setAccessible(true);
+			defineClassMethodHandle = findVirtual_Method.invoke(lookup, ClassLoader.class, "defineClass",defineClassMethodType);
+
+			// clazz = defineClassMethodHandle.bindTo(loader).invokeWithArguments(name, bytes, 0, bytes.length);
+			Class<?> methodHandle_Class = Class.forName("java.lang.invoke.MethodHandle");
+			bindTo_Method = methodHandle_Class.getDeclaredMethod("bindTo", Object.class);
+			invokeWithArguments_Method = methodHandle_Class.getDeclaredMethod("invokeWithArguments",Object[].class);
+			
+			initializedForJava11 = true;
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+	}
+	
+	private void defineClass(ClassLoader loader, String name, byte[] bytes, ProtectionDomain protectionDomain) {
 		if (trace.isTraceEnabled()) {
 			trace.enter("defineClass", this, new Object[] { loader, name, bytes });
 		}
 		Object clazz = null;
 		debug("generating class '" + name + "'");
-		try {
-			clazz = getUnsafe().defineClass(name, bytes, 0, bytes.length, loader, null);
-		} catch (LinkageError le) {
-			// likely thrown due to defining something that already exists?
-			// Old comments from before moving to Unsafe.defineClass():
-			// is already defined (happens for X$ajcMightHaveAspect interfaces since aspects are reweaved)
-			// TODO maw I don't think this is OK and
-		} catch (Exception e) {
-			e.printStackTrace(System.err);
-			warn("define generated class failed", e);
+		if (LangUtil.is11VMOrGreater()) {
+			try {
+				if (!initializedForJava11) {
+					initializeForJava11();
+				}
+				// Do this: clazz = defineClassMethodHandle.bindTo(loader).invokeWithArguments(name, bytes, 0, bytes.length);
+				Object o = bindTo_Method.invoke(defineClassMethodHandle,loader);
+				clazz = invokeWithArguments_Method.invoke(o, new Object[] {new Object[] {name, bytes, 0, bytes.length}});
+			    
+			} catch (Throwable t) {
+				t.printStackTrace(System.err);
+				warn("define generated class failed", t);
+			}
+		} else {
+			try {
+				if (defineClassMethod == null) {
+					synchronized (lock) {
+						getUnsafe();
+						defineClassMethod = 
+								Unsafe.class.getDeclaredMethod("defineClass", String.class,byte[].class,Integer.TYPE,Integer.TYPE, ClassLoader.class,ProtectionDomain.class);
+					}
+				}
+				defineClassMethod.setAccessible(true);
+				clazz = defineClassMethod.invoke(getUnsafe(), name,bytes,0,bytes.length,loader,protectionDomain);
+			} catch (LinkageError le) {
+				le.printStackTrace();
+				// likely thrown due to defining something that already exists?
+				// Old comments from before moving to Unsafe.defineClass():
+				// is already defined (happens for X$ajcMightHaveAspect interfaces since aspects are reweaved)
+				// TODO maw I don't think this is OK and
+			} catch (Exception e) {
+				e.printStackTrace(System.err);
+				warn("define generated class failed", e);
+			}
 		}
 
 		if (trace.isTraceEnabled()) {
 			trace.exit("defineClass", clazz);
 		}
 	}
+	static Method defineClassMethod;
+	private static String lock = "lock";
+	
+	
+//    /*
+//    This method is equivalent to the following code but use reflection to compile on Java 7:
+//     MethodHandles.Lookup baseLookup = MethodHandles.lookup();
+//    MethodHandles.Lookup lookup = MethodHandles.privateLookupIn(ClassLoader.class, baseLookup);
+//    MethodHandle defineClassMethodHandle = lookup.findVirtual(ClassLoader.class, "defineClass", defineClassMethodType);
+//    handle.bindTo(classLoader).invokeWithArguments(className, classBytes, 0, classBytes.length));
+// */
+//@Override
+//@SuppressWarnings("unchecked")
+//public <T> Class<T> defineClass(ClassLoader classLoader, String className, byte[] classBytes) {
+//    Object baseLookup = methodHandlesLookup.invoke(null);
+//    Object lookup = methodHandlesPrivateLookupIn.invoke(null, ClassLoader.class, baseLookup);
+//    MethodHandle defineClassMethodHandle = (MethodHandle) lookupFindVirtual.invoke(lookup, ClassLoader.class, "defineClass", defineClassMethodType);
+//    try {
+//        return Cast.uncheckedCast(defineClassMethodHandle.bindTo(classLoader).invokeWithArguments(className, classBytes, 0, classBytes.length));
+//    } catch (Throwable throwable) {
+//        throw new RuntimeException(throwable);
+//        return (Class) defineClassMethodHandle.bindTo(classLoader).invokeWithArguments(className, classBytes, 0, classBytes.length);
+//    } catch (Throwable e) {
+//        throw new RuntimeException(e);
+//    }
+//}
 
-	private void defineClass(ClassLoader loader, String name, byte[] bytes, ProtectionDomain protectionDomain) {
-		if (trace.isTraceEnabled()) {
-			trace.enter("defineClass", this, new Object[] { loader, name, bytes, protectionDomain });
-		}
-		Object clazz = null;
-		debug("generating class '" + name + "'");
-		try {
-			getUnsafe().defineClass(name, bytes, 0, bytes.length, loader, protectionDomain);
-		} catch (LinkageError le) {
-			// likely thrown due to defining something that already exists?
-			// Old comments from before moving to Unsafe.defineClass():
-			// is already defined (happens for X$ajcMightHaveAspect interfaces since aspects are reweaved)
-			// TODO maw I don't think this is OK and
-		} catch (Exception e) {
-			warn("define generated class failed", e);
-		}
-
-		if (trace.isTraceEnabled()) {
-			trace.exit("defineClass", clazz);
-		}
+	private void defineClass(ClassLoader loader, String name, byte[] bytes){
+		defineClass(loader,name,bytes,null);//, ProtectionDomain protectionDomain) {
 	}
+//		if (trace.isTraceEnabled()) {
+//			trace.enter("defineClass", this, new Object[] { loader, name, bytes, protectionDomain });
+//		}
+//		Object clazz = null;
+//		debug("generating class '" + name + "'");
+//		try {
+//			getUnsafe().defineClass(name, bytes, 0, bytes.length, loader, protectionDomain);
+//		} catch (LinkageError le) {
+//			// likely thrown due to defining something that already exists?
+//			// Old comments from before moving to Unsafe.defineClass():
+//			// is already defined (happens for X$ajcMightHaveAspect interfaces since aspects are reweaved)
+//			// TODO maw I don't think this is OK and
+//		} catch (Exception e) {
+//			warn("define generated class failed", e);
+//		}
+//
+//		if (trace.isTraceEnabled()) {
+//			trace.exit("defineClass", clazz);
+//		}
+//	}
 
 }
\ No newline at end of file
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.java b/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.java
index c0fd9d3..9220108 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/loadtime/ConcreteAspectCodeGen.java
@@ -355,9 +355,7 @@
 	}
 
 	/**
-	 * Build the bytecode for the concrete aspect
-	 * 
-	 * @return concrete aspect bytecode
+	 * @return the bytecode for the concrete aspect
 	 */
 	public byte[] getBytes() {
 		if (!isValid) {
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/ltw/LTWWorld.java b/org.aspectj.weaver/source/org/aspectj/weaver/ltw/LTWWorld.java
index 49185a2..de5a4d8 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/ltw/LTWWorld.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/ltw/LTWWorld.java
@@ -73,7 +73,12 @@
 	public LTWWorld(ClassLoader loader, IWeavingContext weavingContext, IMessageHandler handler, ICrossReferenceHandler xrefHandler) {
 		super(loader, handler, xrefHandler);
 		this.weavingContext = weavingContext;
-		classLoaderString = loader.toString();
+		try {
+			classLoaderString = loader.toString();
+		} catch (Throwable t) {
+			// Possibly some state in the loader isn't initialized but is used in the toString()
+			classLoaderString = loader.getClass().getName()+":"+Integer.toString(System.identityHashCode(loader));
+		}
 		classLoaderParentString = (loader.getParent() == null ? "<NullParent>" : loader.getParent().toString());
 		setBehaveInJava5Way(LangUtil.is15VMOrGreater());
 		annotationFinder = ReflectionWorld.makeAnnotationFinderIfAny(loader, this);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AndTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AndTypePattern.java
index d23404f..781a588 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AndTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AndTypePattern.java
@@ -19,6 +19,7 @@
 import org.aspectj.weaver.CompressingDataOutputStream;
 import org.aspectj.weaver.ISourceContext;
 import org.aspectj.weaver.ResolvedType;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.VersionedDataInputStream;
 import org.aspectj.weaver.World;
 
@@ -41,33 +42,40 @@
 		setLocation(left.getSourceContext(), left.getStart(), right.getEnd());
 	}
 
+	@Override
 	protected boolean couldEverMatchSameTypesAs(TypePattern other) {
 		return true; // don't dive into ands yet....
 	}
 
+	@Override
 	public FuzzyBoolean matchesInstanceof(ResolvedType type) {
 		return left.matchesInstanceof(type).and(right.matchesInstanceof(type));
 	}
 
+	@Override
 	protected boolean matchesExactly(ResolvedType type) {
 		// ??? if these had side-effects, this sort-circuit could be a mistake
 		return left.matchesExactly(type) && right.matchesExactly(type);
 	}
 
+	@Override
 	protected boolean matchesExactly(ResolvedType type, ResolvedType annotatedType) {
 		return left.matchesExactly(type, annotatedType) && right.matchesExactly(type, annotatedType);
 	}
 
+	@Override
 	public boolean matchesStatically(ResolvedType type) {
 		return left.matchesStatically(type) && right.matchesStatically(type);
 	}
 
+	@Override
 	public void setIsVarArgs(boolean isVarArgs) {
 		this.isVarArgs = isVarArgs;
 		left.setIsVarArgs(isVarArgs);
 		right.setIsVarArgs(isVarArgs);
 	}
 
+	@Override
 	public void setAnnotationTypePattern(AnnotationTypePattern annPatt) {
 		if (annPatt == AnnotationTypePattern.ANY) {
 			return;
@@ -84,6 +92,7 @@
 		}
 	}
 
+	@Override
 	public void write(CompressingDataOutputStream s) throws IOException {
 		s.writeByte(TypePattern.AND);
 		left.write(s);
@@ -100,6 +109,7 @@
 		return ret;
 	}
 
+	@Override
 	public TypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding, boolean requireExactType) {
 		if (requireExactType) {
 			return notExactType(scope);
@@ -108,8 +118,9 @@
 		right = right.resolveBindings(scope, bindings, false, false);
 		return this;
 	}
-
-	public TypePattern parameterizeWith(Map typeVariableMap, World w) {
+ 
+	@Override
+	public TypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		TypePattern newLeft = left.parameterizeWith(typeVariableMap, w);
 		TypePattern newRight = right.parameterizeWith(typeVariableMap, w);
 		AndTypePattern ret = new AndTypePattern(newLeft, newRight);
@@ -117,6 +128,7 @@
 		return ret;
 	}
 
+	@Override
 	public String toString() {
 		StringBuffer buff = new StringBuffer();
 		if (annotationPattern != AnnotationTypePattern.ANY) {
@@ -143,6 +155,7 @@
 		return right;
 	}
 
+	@Override
 	public boolean equals(Object obj) {
 		if (!(obj instanceof AndTypePattern)) {
 			return false;
@@ -151,6 +164,7 @@
 		return left.equals(atp.left) && right.equals(atp.right);
 	}
 
+	@Override
 	public boolean isStarAnnotation() {
 		return left.isStarAnnotation() && right.isStarAnnotation();
 	}
@@ -160,6 +174,7 @@
 	 * 
 	 * @see java.lang.Object#hashCode()
 	 */
+	@Override
 	public int hashCode() {
 		int ret = 17;
 		ret = ret + 37 * left.hashCode();
@@ -167,10 +182,12 @@
 		return ret;
 	}
 
+	@Override
 	public Object accept(PatternNodeVisitor visitor, Object data) {
 		return visitor.visit(this, data);
 	}
 
+	@Override
 	public Object traverse(PatternNodeVisitor visitor, Object data) {
 		Object ret = accept(visitor, data);
 		left.traverse(visitor, ret);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnnotationPointcut.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnnotationPointcut.java
index 0a19725..e829d37 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnnotationPointcut.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnnotationPointcut.java
@@ -82,11 +82,13 @@
 		return annotationTypePattern;
 	}
 
+	@Override
 	public int couldMatchKinds() {
 		return Shadow.ALL_SHADOW_KINDS_BITS;
 	}
 
-	public Pointcut parameterizeWith(Map typeVariableMap, World w) {
+	@Override
+	public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		AnnotationPointcut ret = new AnnotationPointcut((ExactAnnotationTypePattern) annotationTypePattern.parameterizeWith(
 				typeVariableMap, w));
 		ret.copyLocationFrom(this);
@@ -98,6 +100,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.Pointcut#fastMatch(org.aspectj.weaver.patterns.FastMatchInfo)
 	 */
+	@Override
 	public FuzzyBoolean fastMatch(FastMatchInfo info) {
 		if (info.getKind() == Shadow.StaticInitialization) {
 			return annotationTypePattern.fastMatches(info.getType());
@@ -111,6 +114,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.Pointcut#match(org.aspectj.weaver.Shadow)
 	 */
+	@Override
 	protected FuzzyBoolean matchInternal(Shadow shadow) {
 		AnnotatedElement toMatchAgainst = null;
 		Member member = shadow.getSignature();
@@ -173,6 +177,7 @@
 	 * @see org.aspectj.weaver.patterns.Pointcut#resolveBindings(org.aspectj.weaver.patterns.IScope,
 	 * org.aspectj.weaver.patterns.Bindings)
 	 */
+	@Override
 	protected void resolveBindings(IScope scope, Bindings bindings) {
 		if (!scope.getWorld().isInJava5Mode()) {
 			scope.message(MessageUtil.error(WeaverMessages.format(WeaverMessages.ATANNOTATION_ONLY_SUPPORTED_AT_JAVA5_LEVEL),
@@ -188,6 +193,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.Pointcut#concretize1(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.IntMap)
 	 */
+	@Override
 	protected Pointcut concretize1(ResolvedType inAspect, ResolvedType declaringType, IntMap bindings) {
 		ExactAnnotationTypePattern newType = (ExactAnnotationTypePattern) annotationTypePattern.remapAdviceFormals(bindings);
 		Pointcut ret = new AnnotationPointcut(newType, bindings.getEnclosingAdvice());
@@ -195,6 +201,7 @@
 		return ret;
 	}
 
+	@Override
 	protected Test findResidueInternal(Shadow shadow, ExposedState state) {
 		if (annotationTypePattern instanceof BindingAnnotationFieldTypePattern) {
 			if (shadow.getKind() != Shadow.MethodExecution) {
@@ -254,6 +261,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns()
 	 */
+	@Override
 	public List<BindingPattern> getBindingAnnotationTypePatterns() {
 		if (annotationTypePattern instanceof BindingPattern) { // BindingAnnotationTypePattern) {
 			List<BindingPattern> l = new ArrayList<BindingPattern>();
@@ -269,6 +277,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns()
 	 */
+	@Override
 	public List<BindingTypePattern> getBindingTypePatterns() {
 		return Collections.emptyList();
 	}
@@ -278,6 +287,7 @@
 	 * 
 	 * @see org.aspectj.weaver.patterns.PatternNode#write(java.io.DataOutputStream)
 	 */
+	@Override
 	public void write(CompressingDataOutputStream s) throws IOException {
 		s.writeByte(Pointcut.ANNOTATION);
 		annotationTypePattern.write(s);
@@ -291,6 +301,7 @@
 		return ret;
 	}
 
+	@Override
 	public boolean equals(Object other) {
 		if (!(other instanceof AnnotationPointcut)) {
 			return false;
@@ -299,6 +310,7 @@
 		return o.annotationTypePattern.equals(this.annotationTypePattern);
 	}
 
+	@Override
 	public int hashCode() {
 		int result = 17;
 		result = 37 * result + annotationTypePattern.hashCode();
@@ -314,10 +326,12 @@
 		this.declarationText = buf.toString();
 	}
 
+	@Override
 	public String toString() {
 		return this.declarationText;
 	}
 
+	@Override
 	public Object accept(PatternNodeVisitor visitor, Object data) {
 		return visitor.visit(this, data);
 	}
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.java
index 8af265b..7694243 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyAnnotationTypePattern.java
@@ -18,6 +18,7 @@
 import org.aspectj.weaver.AnnotatedElement;
 import org.aspectj.weaver.CompressingDataOutputStream;
 import org.aspectj.weaver.ResolvedType;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.World;
 
 public class AnyAnnotationTypePattern extends AnnotationTypePattern {
@@ -62,7 +63,7 @@
 	}
 
 	@Override
-	public AnnotationTypePattern parameterizeWith(Map arg0, World w) {
+	public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> arg0, World w) {
 		return this;
 	}
 
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyTypePattern.java
index f368553..db9ba51 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/AnyTypePattern.java
@@ -17,6 +17,7 @@
 import org.aspectj.util.FuzzyBoolean;
 import org.aspectj.weaver.CompressingDataOutputStream;
 import org.aspectj.weaver.ResolvedType;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.World;
 
 public class AnyTypePattern extends TypePattern {
@@ -106,7 +107,7 @@
 	}
 
 	@Override
-	public TypePattern parameterizeWith(Map arg0, World w) {
+	public TypePattern parameterizeWith(Map<String,UnresolvedType> arg0, World w) {
 		return this;
 	}
 }
\ No newline at end of file
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.java
index e7b8ac9..707f1e7 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/BindingAnnotationFieldTypePattern.java
@@ -65,6 +65,7 @@
 		}
 	}
 
+	@Override
 	public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) {
 		throw new BCException("Parameterization not implemented for annotation field binding construct (compiler limitation)");
 		// UnresolvedType newAnnotationType = annotationType;
@@ -86,10 +87,12 @@
 		// return ret;
 	}
 
+	@Override
 	public int getFormalIndex() {
 		return formalIndex;
 	}
 
+	@Override
 	public boolean equals(Object obj) {
 		if (!(obj instanceof BindingAnnotationFieldTypePattern)) {
 			return false;
@@ -99,10 +102,12 @@
 				&& (formalType.equals(btp.formalType));
 	}
 
+	@Override
 	public int hashCode() {
 		return (annotationType.hashCode() * 37 + formalIndex * 37) + formalType.hashCode();
 	}
 
+	@Override
 	public AnnotationTypePattern remapAdviceFormals(IntMap bindings) {
 		if (!bindings.hasKey(formalIndex)) {
 			throw new BCException("Annotation field binding reference must be bound (compiler limitation)");
@@ -117,6 +122,7 @@
 		}
 	}
 
+	@Override
 	public void write(CompressingDataOutputStream s) throws IOException {
 		s.writeByte(AnnotationTypePattern.BINDINGFIELD2);
 		formalType.write(s); // the type of the field within the annotation
@@ -141,6 +147,7 @@
 		return ret;
 	}
 
+	@Override
 	public FuzzyBoolean matches(AnnotatedElement annotated, ResolvedType[] parameterAnnotations) {
 		// Inheritance irrelevant because @annotation(Anno(x)) only supported at method execution join points (compiler limitation)
 		// boolean checkSupers = false;
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/CflowPointcut.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/CflowPointcut.java
index ed66dc0..a83236e 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/CflowPointcut.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/CflowPointcut.java
@@ -64,9 +64,6 @@
 		pointcutKind = CFLOW;
 	}
 
-	/**
-	 * @return Returns true is this is a cflowbelow pointcut
-	 */
 	public boolean isCflowBelow() {
 		return isBelow;
 	}
@@ -230,8 +227,8 @@
 			} else {
 
 				// Create a counter field in the aspect
-				localCflowField = new ResolvedMemberImpl(Member.FIELD, concreteAspect, Modifier.STATIC | Modifier.PUBLIC
-						| Modifier.FINAL, NameMangler.cflowCounter(xcut), UnresolvedType.forName(NameMangler.CFLOW_COUNTER_TYPE)
+				localCflowField = new ResolvedMemberImpl(Member.FIELD, concreteAspect, Modifier.STATIC | Modifier.PUBLIC,
+						NameMangler.cflowCounter(xcut), UnresolvedType.forName(NameMangler.CFLOW_COUNTER_TYPE)
 						.getSignature());
 
 				// Create type munger to add field to the aspect
@@ -294,8 +291,8 @@
 				localCflowField = (ResolvedMember) field;
 			} else {
 
-				localCflowField = new ResolvedMemberImpl(Member.FIELD, concreteAspect, Modifier.STATIC | Modifier.PUBLIC
-						| Modifier.FINAL, NameMangler.cflowStack(xcut), UnresolvedType.forName(NameMangler.CFLOW_STACK_TYPE)
+				localCflowField = new ResolvedMemberImpl(Member.FIELD, concreteAspect, Modifier.STATIC | Modifier.PUBLIC,
+						NameMangler.cflowStack(xcut), UnresolvedType.forName(NameMangler.CFLOW_STACK_TYPE)
 						.getSignature());
 				// System.out.println("adding field to: " + inAspect + " field "
 				// + cflowField);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.java
index 772e8f6..b51d72d 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ExactAnnotationTypePattern.java
@@ -18,6 +18,7 @@
 import org.aspectj.bridge.IMessage;
 import org.aspectj.bridge.MessageUtil;
 import org.aspectj.util.FuzzyBoolean;
+import org.aspectj.weaver.AjAttribute.WeaverVersionInfo;
 import org.aspectj.weaver.AnnotatedElement;
 import org.aspectj.weaver.AnnotationAJ;
 import org.aspectj.weaver.BCException;
@@ -31,7 +32,6 @@
 import org.aspectj.weaver.VersionedDataInputStream;
 import org.aspectj.weaver.WeaverMessages;
 import org.aspectj.weaver.World;
-import org.aspectj.weaver.AjAttribute.WeaverVersionInfo;
 
 /**
  * Matches an annotation of a given type
@@ -321,13 +321,13 @@
 	}
 
 	@Override
-	public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) {
+	public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		UnresolvedType newAnnotationType = annotationType;
 		if (annotationType.isTypeVariableReference()) {
 			TypeVariableReference t = (TypeVariableReference) annotationType;
 			String key = t.getTypeVariable().getName();
 			if (typeVariableMap.containsKey(key)) {
-				newAnnotationType = (UnresolvedType) typeVariableMap.get(key);
+				newAnnotationType = typeVariableMap.get(key);
 			}
 		} else if (annotationType.isParameterizedType()) {
 			newAnnotationType = annotationType.parameterize(typeVariableMap);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/KindedPointcut.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/KindedPointcut.java
index 892f01b..968c420 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/KindedPointcut.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/KindedPointcut.java
@@ -457,7 +457,7 @@
 	}
 
 	@Override
-	public Pointcut parameterizeWith(Map typeVariableMap, World w) {
+	public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		Pointcut ret = new KindedPointcut(kind, signature.parameterizeWith(typeVariableMap, w), munger);
 		ret.copyLocationFrom(this);
 		return ret;
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NoTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NoTypePattern.java
index 26dacba..e5be0a9 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NoTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NoTypePattern.java
@@ -17,6 +17,7 @@
 import org.aspectj.util.FuzzyBoolean;
 import org.aspectj.weaver.CompressingDataOutputStream;
 import org.aspectj.weaver.ResolvedType;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.World;
 
 public class NoTypePattern extends TypePattern {
@@ -111,7 +112,7 @@
 	}
 
 	@Override
-	public TypePattern parameterizeWith(Map arg0, World w) {
+	public TypePattern parameterizeWith(Map<String,UnresolvedType> arg0, World w) {
 		return this;
 	}
 }
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotPointcut.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotPointcut.java
index 09ce1f6..85d2cdb 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotPointcut.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotPointcut.java
@@ -21,6 +21,7 @@
 import org.aspectj.weaver.IntMap;
 import org.aspectj.weaver.ResolvedType;
 import org.aspectj.weaver.Shadow;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.VersionedDataInputStream;
 import org.aspectj.weaver.World;
 import org.aspectj.weaver.ast.Test;
@@ -40,6 +41,7 @@
 		setLocation(pointcut.getSourceContext(), startPos, pointcut.getEnd());
 	}
 
+	@Override
 	public int couldMatchKinds() {
 		return Shadow.ALL_SHADOW_KINDS_BITS;
 	}
@@ -48,19 +50,23 @@
 		return body;
 	}
 
+	@Override
 	public FuzzyBoolean fastMatch(FastMatchInfo type) {
 		return body.fastMatch(type).not();
 	}
 
+	@Override
 	protected FuzzyBoolean matchInternal(Shadow shadow) {
 		return body.match(shadow).not();
 	}
 
+	@Override
 	public String toString() {
 		return "!" + body.toString();
 
 	}
 
+	@Override
 	public boolean equals(Object other) {
 		if (!(other instanceof NotPointcut)) {
 			return false;
@@ -69,10 +75,12 @@
 		return o.body.equals(body);
 	}
 
+	@Override
 	public int hashCode() {
 		return 37 * 23 + body.hashCode();
 	}
 
+	@Override
 	public void resolveBindings(IScope scope, Bindings bindings) {
 		// Bindings old = bindings.copy();
 
@@ -85,6 +93,7 @@
 
 	}
 
+	@Override
 	public void write(CompressingDataOutputStream s) throws IOException {
 		s.writeByte(Pointcut.NOT);
 		body.write(s);
@@ -97,26 +106,31 @@
 		return ret;
 	}
 
+	@Override
 	protected Test findResidueInternal(Shadow shadow, ExposedState state) {
 		return Test.makeNot(body.findResidue(shadow, state));
 	}
 
+	@Override
 	public Pointcut concretize1(ResolvedType inAspect, ResolvedType declaringType, IntMap bindings) {
 		Pointcut ret = new NotPointcut(body.concretize(inAspect, declaringType, bindings));
 		ret.copyLocationFrom(this);
 		return ret;
 	}
 
-	public Pointcut parameterizeWith(Map typeVariableMap, World w) {
+	@Override
+	public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		Pointcut ret = new NotPointcut(body.parameterizeWith(typeVariableMap, w));
 		ret.copyLocationFrom(this);
 		return ret;
 	}
 
+	@Override
 	public Object accept(PatternNodeVisitor visitor, Object data) {
 		return visitor.visit(this, data);
 	}
 
+	@Override
 	public Object traverse(PatternNodeVisitor visitor, Object data) {
 		Object ret = accept(visitor, data);
 		this.body.traverse(visitor, ret);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotTypePattern.java
index cea4b84..0f8f82c 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/NotTypePattern.java
@@ -20,6 +20,7 @@
 import org.aspectj.weaver.CompressingDataOutputStream;
 import org.aspectj.weaver.ISourceContext;
 import org.aspectj.weaver.ResolvedType;
+import org.aspectj.weaver.UnresolvedType;
 import org.aspectj.weaver.VersionedDataInputStream;
 import org.aspectj.weaver.World;
 
@@ -118,7 +119,7 @@
 	}
 
 	@Override
-	public TypePattern parameterizeWith(Map typeVariableMap, World w) {
+	public TypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		TypePattern newNegatedPattern = negatedPattern.parameterizeWith(typeVariableMap, w);
 		NotTypePattern ret = new NotTypePattern(newNegatedPattern);
 		ret.copyLocationFrom(this);
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ParserException.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ParserException.java
index cce9287..036061f 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ParserException.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/ParserException.java
@@ -9,13 +9,10 @@
  * Contributors: 
  *     PARC     initial implementation 
  * ******************************************************************/
-
-
 package org.aspectj.weaver.patterns;
 
 import org.aspectj.weaver.IHasPosition;
 
-
 public class ParserException extends RuntimeException {
 	private IHasPosition token;
 	
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/PerCflow.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/PerCflow.java
index 901c494..1ad834e 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/PerCflow.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/PerCflow.java
@@ -88,7 +88,7 @@
 			return ret;
 		}
 
-		Member cflowStackField = new ResolvedMemberImpl(Member.FIELD, inAspect, Modifier.STATIC | Modifier.PUBLIC | Modifier.FINAL,
+		Member cflowStackField = new ResolvedMemberImpl(Member.FIELD, inAspect, Modifier.PUBLIC | Modifier.STATIC,
 				UnresolvedType.forName(NameMangler.CFLOW_STACK_TYPE), NameMangler.PERCFLOW_FIELD_NAME, UnresolvedType.NONE);
 
 		World world = inAspect.getWorld();
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/WildAnnotationTypePattern.java b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/WildAnnotationTypePattern.java
index 10cce62..0941462 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/patterns/WildAnnotationTypePattern.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/patterns/WildAnnotationTypePattern.java
@@ -346,7 +346,7 @@
 	}
 
 	@Override
-	public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) {
+	public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) {
 		WildAnnotationTypePattern ret = new WildAnnotationTypePattern(typePattern.parameterizeWith(typeVariableMap, w));
 		ret.copyLocationFrom(this);
 		ret.resolved = resolved;
diff --git a/org.aspectj.weaver/source/org/aspectj/weaver/tools/WeavingAdaptor.java b/org.aspectj.weaver/source/org/aspectj/weaver/tools/WeavingAdaptor.java
index c372afc..a02400f 100644
--- a/org.aspectj.weaver/source/org/aspectj/weaver/tools/WeavingAdaptor.java
+++ b/org.aspectj.weaver/source/org/aspectj/weaver/tools/WeavingAdaptor.java
@@ -80,6 +80,9 @@
 	public static final String SHOW_WEAVE_INFO_PROPERTY = "org.aspectj.weaver.showWeaveInfo";
 	public static final String TRACE_MESSAGES_PROPERTY = "org.aspectj.tracing.messages";
 
+  private final static String ASPECTJ_BASE_PACKAGE = "org.aspectj.";
+  private final static String PACKAGE_INITIAL_CHARS = ASPECTJ_BASE_PACKAGE.charAt(0) + "sj";
+
 	private boolean enabled = false;
 	protected boolean verbose = getVerbose();
 	protected BcelWorld bcelWorld;
@@ -447,7 +450,7 @@
 	}
 
 	private boolean shouldWeaveName(String name) {
-		if ("osj".indexOf(name.charAt(0)) != -1) {
+		if (PACKAGE_INITIAL_CHARS.indexOf(name.charAt(0)) != -1) {
 			if ((weavingSpecialTypes & INITIALIZED) == 0) {
 				weavingSpecialTypes |= INITIALIZED;
 				// initialize it
@@ -463,7 +466,7 @@
 					}
 				}
 			}
-			if (name.startsWith("org.aspectj.")) {
+			if (name.startsWith(ASPECTJ_BASE_PACKAGE)) {
 				return false;
 			}
 			if (name.startsWith("sun.reflect.")) {// JDK reflect
diff --git a/org.eclipse.ajdt.releng/build.properties b/org.eclipse.ajdt.releng/build.properties
index b3c7e0b..b32c6bb 100644
--- a/org.eclipse.ajdt.releng/build.properties
+++ b/org.eclipse.ajdt.releng/build.properties
@@ -43,7 +43,8 @@
 # 1.8.11.20171005105600 - 1.8.11 release (plus one extra fix)
 # 1.8.13.20171030102906 - 1.8.13 dev
 # 1.9.2.20180528092400 - 1.9.2 snapshot
-ajde.version=1.9.2.20180528092400
+# 1.9.2.20181011162500 - 1.9.2 snapshot
+ajde.version=1.9.2.20181011162500
 
 
 builder=.