From 2b63e7c2af5ae6024fbe31dc57716f9707d51c60 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Mon, 22 Apr 2024 16:22:46 +0100 Subject: [PATCH 1/8] First cut of plugins branch changes --- .../v2c/src/test/java/plugins/LSPTest.java | 12 +- lsp/src/main/java/lsp/InitializeHandler.java | 10 +- lsp/src/main/java/lsp/LSPHandler.java | 4 + .../main/java/lsp/LSPInitializeResponse.java | 4 +- lsp/src/main/java/lsp/LSPServer.java | 51 +-- lsp/src/main/java/lsp/ShutdownHandler.java | 4 +- lsp/src/main/java/lsp/UnknownHandler.java | 4 +- lsp/src/main/java/lsp/lspx/CTHandler.java | 15 +- lsp/src/main/java/lsp/lspx/POGHandler.java | 9 +- .../main/java/lsp/lspx/TranslateHandler.java | 16 +- .../lsp/textdocument/CodeLensHandler.java | 6 +- .../lsp/textdocument/CompletionHandler.java | 4 +- .../lsp/textdocument/DefinitionHandler.java | 4 +- .../lsp/textdocument/DidChangeHandler.java | 4 +- .../lsp/textdocument/DidCloseHandler.java | 4 +- .../java/lsp/textdocument/DidOpenHandler.java | 4 +- .../java/lsp/textdocument/DidSaveHandler.java | 4 +- .../textdocument/DocumentSymbolHandler.java | 4 +- .../lsp/textdocument/ReferencesHandler.java | 4 +- .../textdocument/TypeHierarchyHandler.java | 8 +- .../lsp/workspace/DidChangeWSHandler.java | 6 +- .../java/workspace/DAPWorkspaceManager.java | 12 +- .../main/java/workspace/EventListener.java | 2 + ...SPWorkspaceManager.java => LSPPlugin.java} | 183 +++++++++- lsp/src/main/java/workspace/MessageHub.java | 2 +- .../main/java/workspace/lenses/CodeLens.java | 4 +- .../java/workspace/plugins/ASTPlugin.java | 4 +- .../java/workspace/plugins/ASTPluginPR.java | 6 +- .../java/workspace/plugins/ASTPluginSL.java | 6 +- .../workspace/plugins/AnalysisPlugin.java | 3 + .../main/java/workspace/plugins/CTPlugin.java | 125 +++++++ .../main/java/workspace/plugins/POPlugin.java | 22 ++ .../TRPlugin.java} | 318 ++---------------- lsp/src/test/java/lsp/DAPTest.java | 11 +- lsp/src/test/java/lsp/LSPTest.java | 11 +- quickcheck/src/test/java/tests/LSPTest.java | 11 +- 36 files changed, 461 insertions(+), 440 deletions(-) rename lsp/src/main/java/workspace/{LSPWorkspaceManager.java => LSPPlugin.java} (87%) rename lsp/src/main/java/workspace/{LSPXWorkspaceManager.java => plugins/TRPlugin.java} (51%) diff --git a/examples/v2c/src/test/java/plugins/LSPTest.java b/examples/v2c/src/test/java/plugins/LSPTest.java index 8f5ce4284..f55cdb4a1 100644 --- a/examples/v2c/src/test/java/plugins/LSPTest.java +++ b/examples/v2c/src/test/java/plugins/LSPTest.java @@ -38,13 +38,11 @@ import rpc.RPCRequest; import workspace.DAPWorkspaceManager; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; abstract public class LSPTest { - protected LSPWorkspaceManager lspManager = null; - protected LSPXWorkspaceManager lspxManager = null; + protected LSPPlugin lspManager = null; protected DAPWorkspaceManager dapManager = null; static @@ -55,11 +53,9 @@ abstract public class LSPTest protected void setupWorkspace(Dialect dialect) throws IOException { Settings.dialect = dialect; - LSPWorkspaceManager.reset(); - LSPXWorkspaceManager.reset(); + LSPPlugin.reset(); DAPWorkspaceManager.reset(); - lspManager = LSPWorkspaceManager.getInstance(); - lspxManager = LSPXWorkspaceManager.getInstance(); + lspManager = LSPPlugin.getInstance(); dapManager = DAPWorkspaceManager.getInstance(); } diff --git a/lsp/src/main/java/lsp/InitializeHandler.java b/lsp/src/main/java/lsp/InitializeHandler.java index 0051f1624..c21f38d56 100644 --- a/lsp/src/main/java/lsp/InitializeHandler.java +++ b/lsp/src/main/java/lsp/InitializeHandler.java @@ -27,7 +27,7 @@ import rpc.RPCRequest; import rpc.RPCResponse; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import java.io.File; import java.net.URISyntaxException; @@ -72,8 +72,9 @@ private RPCMessageList initialize(RPCRequest request) rootUri = new File(".").getCanonicalFile(); // Some editors don't set the root? Diag.config("Assuming rootUri = %s", rootUri); } - - return LSPWorkspaceManager.getInstance().lspInitialize(request, clientInfo, rootUri, clientCapabilities); + + LSPPlugin lsp = registry.getPlugin("LSP"); + return lsp.lspInitialize(request, clientInfo, rootUri, clientCapabilities); } catch (URISyntaxException e) { @@ -90,7 +91,8 @@ private RPCMessageList initialize(RPCRequest request) private RPCMessageList initialized(RPCRequest request) { LSPServer.getInstance().setInitialized(true); - return LSPWorkspaceManager.getInstance().lspInitialized(request); + LSPPlugin lsp = registry.getPlugin("LSP"); + return lsp.lspInitialized(request); } @Override diff --git a/lsp/src/main/java/lsp/LSPHandler.java b/lsp/src/main/java/lsp/LSPHandler.java index d6598393f..2f8728399 100644 --- a/lsp/src/main/java/lsp/LSPHandler.java +++ b/lsp/src/main/java/lsp/LSPHandler.java @@ -29,11 +29,15 @@ import rpc.RPCRequest; import rpc.RPCResponse; import workspace.Diag; +import workspace.PluginRegistry; abstract public class LSPHandler implements RPCHandler { + protected final PluginRegistry registry; + public LSPHandler() { + registry = PluginRegistry.getInstance(); } @Override diff --git a/lsp/src/main/java/lsp/LSPInitializeResponse.java b/lsp/src/main/java/lsp/LSPInitializeResponse.java index 1edf6b314..bf29679f7 100644 --- a/lsp/src/main/java/lsp/LSPInitializeResponse.java +++ b/lsp/src/main/java/lsp/LSPInitializeResponse.java @@ -27,7 +27,7 @@ import dap.DAPServerSocket; import json.JSONArray; import json.JSONObject; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import workspace.PluginRegistry; public class LSPInitializeResponse extends JSONObject @@ -45,7 +45,7 @@ public LSPInitializeResponse() private JSONObject getServerCapabilities() { JSONObject cap = new JSONObject(); - LSPWorkspaceManager manager = LSPWorkspaceManager.getInstance(); + LSPPlugin manager = LSPPlugin.getInstance(); cap.put("definitionProvider", true); // Go to definition for F12 diff --git a/lsp/src/main/java/lsp/LSPServer.java b/lsp/src/main/java/lsp/LSPServer.java index e4a89df8a..d499996ab 100644 --- a/lsp/src/main/java/lsp/LSPServer.java +++ b/lsp/src/main/java/lsp/LSPServer.java @@ -36,20 +36,6 @@ import json.JSONObject; import json.JSONServer; -import lsp.lspx.CTHandler; -import lsp.lspx.POGHandler; -import lsp.lspx.TranslateHandler; -import lsp.textdocument.CodeLensHandler; -import lsp.textdocument.CompletionHandler; -import lsp.textdocument.DefinitionHandler; -import lsp.textdocument.DidChangeHandler; -import lsp.textdocument.DidCloseHandler; -import lsp.textdocument.DidOpenHandler; -import lsp.textdocument.DidSaveHandler; -import lsp.textdocument.DocumentSymbolHandler; -import lsp.textdocument.ReferencesHandler; -import lsp.textdocument.TypeHierarchyHandler; -import lsp.workspace.DidChangeWSHandler; import rpc.RPCDispatcher; import rpc.RPCHandler; import rpc.RPCMessageList; @@ -57,6 +43,7 @@ import rpc.RPCResponse; import vdmj.DAPDebugLink; import workspace.Diag; +import workspace.LSPPlugin; public class LSPServer extends JSONServer implements VDMJMain { @@ -76,7 +63,7 @@ public LSPServer(Dialect dialect, InputStream inStream, OutputStream outStream) super("LSP", inStream, outStream); INSTANCE = this; - this.dispatcher = getDispatcher(); + this.dispatcher = RPCDispatcher.getInstance(); this.responseHandlers = new HashMap(); // Identify this class as the debug link - See DebugLink @@ -86,6 +73,8 @@ public LSPServer(Dialect dialect, InputStream inStream, OutputStream outStream) Settings.dialect = dialect; Settings.strict = Boolean.getBoolean("vdmj.strict"); Settings.verbose = Boolean.getBoolean("vdmj.verbose"); + + LSPPlugin.getInstance(); // Creates all plugins } public static LSPServer getInstance() @@ -93,38 +82,6 @@ public static LSPServer getInstance() return INSTANCE; } - private RPCDispatcher getDispatcher() throws IOException - { - RPCDispatcher dispatcher = RPCDispatcher.getInstance(); - - dispatcher.register(new InitializeHandler(), "initialize", "initialized", "client/registerCapability"); - dispatcher.register(new ShutdownHandler(), "shutdown"); - dispatcher.register(new ExitHandler(), "exit"); - dispatcher.register(new CancelHandler(), "$/cancelRequest"); - dispatcher.register(new SetTraceNotificationHandler(), "$/setTraceNotification", "$/setTrace"); - - dispatcher.register(new DidOpenHandler(), "textDocument/didOpen"); - dispatcher.register(new DidCloseHandler(), "textDocument/didClose"); - dispatcher.register(new DidChangeHandler(), "textDocument/didChange"); - dispatcher.register(new DidSaveHandler(), "textDocument/didSave"); - dispatcher.register(new DefinitionHandler(), "textDocument/definition"); - dispatcher.register(new DocumentSymbolHandler(), "textDocument/documentSymbol"); - dispatcher.register(new CompletionHandler(), "textDocument/completion"); - dispatcher.register(new CodeLensHandler(), "textDocument/codeLens", "codeLens/resolve"); - dispatcher.register(new ReferencesHandler(), "textDocument/references"); - dispatcher.register(new TypeHierarchyHandler(), "textDocument/prepareTypeHierarchy", "typeHierarchy/supertypes", "typeHierarchy/subtypes"); - - dispatcher.register(new DidChangeWSHandler(), "workspace/didChangeWatchedFiles"); - - dispatcher.register(new POGHandler(), "slsp/POG/generate"); - dispatcher.register(new CTHandler(), "slsp/CT/traces", "slsp/CT/generate", "slsp/CT/execute"); - dispatcher.register(new TranslateHandler(), "slsp/TR/translate"); - - dispatcher.register(new UnknownHandler()); // Called for unknown methods - - return dispatcher; - } - public void run() throws IOException { boolean running = true; diff --git a/lsp/src/main/java/lsp/ShutdownHandler.java b/lsp/src/main/java/lsp/ShutdownHandler.java index ffb7b4649..279761ed5 100644 --- a/lsp/src/main/java/lsp/ShutdownHandler.java +++ b/lsp/src/main/java/lsp/ShutdownHandler.java @@ -25,7 +25,7 @@ package lsp; import rpc.RPCRequest; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import rpc.RPCMessageList; public class ShutdownHandler extends LSPHandler @@ -38,6 +38,6 @@ public ShutdownHandler() @Override public RPCMessageList request(RPCRequest request) { - return LSPWorkspaceManager.getInstance().lspShutdown(request); + return LSPPlugin.getInstance().lspShutdown(request); } } diff --git a/lsp/src/main/java/lsp/UnknownHandler.java b/lsp/src/main/java/lsp/UnknownHandler.java index f62976d60..166c03291 100644 --- a/lsp/src/main/java/lsp/UnknownHandler.java +++ b/lsp/src/main/java/lsp/UnknownHandler.java @@ -25,7 +25,7 @@ package lsp; import rpc.RPCRequest; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; import rpc.RPCMessageList; public class UnknownHandler extends LSPHandler @@ -38,7 +38,7 @@ public UnknownHandler() @Override public RPCMessageList request(RPCRequest request) { - LSPXWorkspaceManager manager = LSPXWorkspaceManager.getInstance(); + LSPPlugin manager = registry.getPlugin("LSP"); return manager.unhandledMethod(request); } } diff --git a/lsp/src/main/java/lsp/lspx/CTHandler.java b/lsp/src/main/java/lsp/lspx/CTHandler.java index b10799e62..482d743e3 100644 --- a/lsp/src/main/java/lsp/lspx/CTHandler.java +++ b/lsp/src/main/java/lsp/lspx/CTHandler.java @@ -37,8 +37,8 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; +import workspace.plugins.CTPlugin; public class CTHandler extends LSPHandler { @@ -50,7 +50,7 @@ public CTHandler() @Override public RPCMessageList request(RPCRequest request) { - if (!LSPWorkspaceManager.getInstance().hasClientCapability("experimental.combinatorialTesting")) + if (!LSPPlugin.getInstance().hasClientCapability("experimental.combinatorialTesting")) { return new RPCMessageList(request, RPCErrors.MethodNotFound, "CT plugin is not enabled by client"); } @@ -77,7 +77,8 @@ private RPCMessageList traces(RPCRequest request) { JSONObject params = request.get("params"); File project = params == null ? null : Utils.uriToFile(params.get("uri")); - return LSPXWorkspaceManager.getInstance().ctTraces(request, project); + CTPlugin ct = registry.getPlugin("CT"); + return ct.ctTraces(request, project); } catch (URISyntaxException e) { @@ -97,7 +98,8 @@ private RPCMessageList generate(RPCRequest request) { JSONObject params = request.get("params"); String name = params.get("name"); - return LSPXWorkspaceManager.getInstance().ctGenerate(request, name); + CTPlugin ct = registry.getPlugin("CT"); + return ct.ctGenerate(request, name); } catch (Exception e) { @@ -158,7 +160,8 @@ private RPCMessageList execute(RPCRequest request) end = range.get("end"); } - return LSPXWorkspaceManager.getInstance().ctExecute(request, tracename, + CTPlugin ct = registry.getPlugin("CT"); + return ct.ctExecute(request, tracename, partialResultToken, workDoneToken, rType, subset, seed, start, end); } catch (Exception e) diff --git a/lsp/src/main/java/lsp/lspx/POGHandler.java b/lsp/src/main/java/lsp/lspx/POGHandler.java index 7178a5380..4d53cb623 100644 --- a/lsp/src/main/java/lsp/lspx/POGHandler.java +++ b/lsp/src/main/java/lsp/lspx/POGHandler.java @@ -35,8 +35,8 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; +import workspace.plugins.POPlugin; public class POGHandler extends LSPHandler { @@ -48,7 +48,7 @@ public POGHandler() @Override public RPCMessageList request(RPCRequest request) { - if (!LSPWorkspaceManager.getInstance().hasClientCapability("experimental.proofObligationGeneration")) + if (!LSPPlugin.getInstance().hasClientCapability("experimental.proofObligationGeneration")) { return new RPCMessageList(request, RPCErrors.MethodNotFound, "PO plugin is not enabled by client"); } @@ -69,7 +69,8 @@ private RPCMessageList generate(RPCRequest request) { JSONObject params = request.get("params"); File file = Utils.uriToFile(params.get("uri")); - return LSPXWorkspaceManager.getInstance().pogGenerate(request, file); + POPlugin po = registry.getPlugin("PO"); + return po.pogGenerate(request, file); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/lspx/TranslateHandler.java b/lsp/src/main/java/lsp/lspx/TranslateHandler.java index 3ac6f3154..a526b20ba 100644 --- a/lsp/src/main/java/lsp/lspx/TranslateHandler.java +++ b/lsp/src/main/java/lsp/lspx/TranslateHandler.java @@ -36,10 +36,10 @@ import rpc.RPCRequest; import workspace.Diag; import workspace.EventHub; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; import workspace.MessageHub; import workspace.events.UnknownTranslationEvent; +import workspace.plugins.TRPlugin; public class TranslateHandler extends LSPHandler { @@ -51,7 +51,7 @@ public TranslateHandler() @Override public RPCMessageList request(RPCRequest request) { - if (!LSPWorkspaceManager.getInstance().hasClientCapability("experimental.translateProvider")) + if (!LSPPlugin.getInstance().hasClientCapability("experimental.translateProvider")) { return new RPCMessageList(request, RPCErrors.MethodNotFound, "Translate capability is not enabled by client"); } @@ -95,19 +95,21 @@ private RPCMessageList translate(RPCRequest request) return new RPCMessageList(request, RPCErrors.InvalidParams, "saveUri does not exist"); } + TRPlugin tr = registry.getPlugin("TR"); + switch (language) { case "latex": - return LSPXWorkspaceManager.getInstance().translateLaTeX(request, file, saveUri, options); + return tr.translateLaTeX(request, file, saveUri, options); case "word": - return LSPXWorkspaceManager.getInstance().translateWord(request, file, saveUri, options); + return tr.translateWord(request, file, saveUri, options); case "coverage": - return LSPXWorkspaceManager.getInstance().translateCoverage(request, file, saveUri, options); + return tr.translateCoverage(request, file, saveUri, options); case "graphviz": - return LSPXWorkspaceManager.getInstance().translateGraphviz(request, file, saveUri, options); + return tr.translateGraphviz(request, file, saveUri, options); default: RPCMessageList result = EventHub.getInstance().publish(new UnknownTranslationEvent(request, language)); diff --git a/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java b/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java index 1f9a83cc0..9cd17d43f 100644 --- a/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java +++ b/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class CodeLensHandler extends LSPHandler { @@ -67,7 +67,7 @@ private RPCMessageList codeLens(RPCRequest request) JSONObject textDocument = params.get("textDocument"); File file = Utils.uriToFile(textDocument.get("uri")); - return LSPWorkspaceManager.getInstance().lspCodeLens(request, file); + return LSPPlugin.getInstance().lspCodeLens(request, file); } catch (URISyntaxException e) { @@ -88,7 +88,7 @@ private RPCMessageList codeLensResolve(RPCRequest request) JSONObject params = request.get("params"); JSONObject data = params.get("data"); - return LSPWorkspaceManager.getInstance().lspCodeLensResolve(request, data); + return LSPPlugin.getInstance().lspCodeLensResolve(request, data); } catch (Exception e) { diff --git a/lsp/src/main/java/lsp/textdocument/CompletionHandler.java b/lsp/src/main/java/lsp/textdocument/CompletionHandler.java index 090f35b0d..4a9127622 100644 --- a/lsp/src/main/java/lsp/textdocument/CompletionHandler.java +++ b/lsp/src/main/java/lsp/textdocument/CompletionHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class CompletionHandler extends LSPHandler { @@ -60,7 +60,7 @@ public RPCMessageList request(RPCRequest request) Long line = position.get("line"); Long character = position.get("character"); - return LSPWorkspaceManager.getInstance().lspCompletion(request, triggerKind, file, line, character); + return LSPPlugin.getInstance().lspCompletion(request, triggerKind, file, line, character); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java b/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java index f62d4c4e1..3913f422b 100644 --- a/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DefinitionHandler extends LSPHandler { @@ -56,7 +56,7 @@ public RPCMessageList request(RPCRequest request) Long line = position.get("line"); Long col = position.get("character"); - return LSPWorkspaceManager.getInstance().lspDefinition(request, file, line, col); + return LSPPlugin.getInstance().lspDefinition(request, file, line, col); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java b/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java index d3ad066d4..f981e1afe 100644 --- a/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java @@ -35,7 +35,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DidChangeHandler extends LSPHandler { @@ -63,7 +63,7 @@ public RPCMessageList request(RPCRequest request) JSONObject change = (JSONObject)contentChange; JSONObject range = change.get("range"); String text = change.get("text"); - RPCMessageList r = LSPWorkspaceManager.getInstance().lspDidChange(request, file, range, text); + RPCMessageList r = LSPPlugin.getInstance().lspDidChange(request, file, range, text); if (r != null) result.addAll(r); } } diff --git a/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java b/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java index 51c5cba3c..115b81a1e 100644 --- a/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DidCloseHandler extends LSPHandler { @@ -52,7 +52,7 @@ public RPCMessageList request(RPCRequest request) JSONObject text = params.get("textDocument"); File file = Utils.uriToFile(text.get("uri")); - return LSPWorkspaceManager.getInstance().lspDidClose(request, file); + return LSPPlugin.getInstance().lspDidClose(request, file); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java b/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java index 2894af178..c41375025 100644 --- a/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DidOpenHandler extends LSPHandler { @@ -53,7 +53,7 @@ public RPCMessageList request(RPCRequest request) File file = Utils.uriToFile(textDoc.get("uri")); String text = textDoc.get("text"); - return LSPWorkspaceManager.getInstance().lspDidOpen(request, file, text); + return LSPPlugin.getInstance().lspDidOpen(request, file, text); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java b/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java index a10fadd64..317e0e092 100644 --- a/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java @@ -33,7 +33,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DidSaveHandler extends LSPHandler { @@ -52,7 +52,7 @@ public RPCMessageList request(RPCRequest request) File file = Utils.uriToFile(textDoc.get("uri")); String text = params.get("text"); - return LSPWorkspaceManager.getInstance().lspDidSave(request, file, text); + return LSPPlugin.getInstance().lspDidSave(request, file, text); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java b/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java index 24882c248..95af43f22 100644 --- a/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DocumentSymbolHandler extends LSPHandler { @@ -52,7 +52,7 @@ public RPCMessageList request(RPCRequest request) JSONObject textDoc = params.get("textDocument"); File file = Utils.uriToFile(textDoc.get("uri")); - return LSPWorkspaceManager.getInstance().lspDocumentSymbols(request, file); + return LSPPlugin.getInstance().lspDocumentSymbols(request, file); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java b/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java index 12ec2dc9f..4c4170fc8 100644 --- a/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java +++ b/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java @@ -33,7 +33,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class ReferencesHandler extends LSPHandler { @@ -58,7 +58,7 @@ public RPCMessageList request(RPCRequest request) JSONObject context = params.get("context"); Boolean incdec = context.get("includeDeclaration"); - return LSPWorkspaceManager.getInstance().lspReferences(request, + return LSPPlugin.getInstance().lspReferences(request, file, line.intValue(), col.intValue(), incdec); } catch (URISyntaxException e) diff --git a/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java b/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java index dda8fd6c7..0cdf1e929 100644 --- a/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java +++ b/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java @@ -37,7 +37,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class TypeHierarchyHandler extends LSPHandler { @@ -82,7 +82,7 @@ private RPCMessageList prepareTypeHierarchy(RPCRequest request) Long line = position.get("line"); Long col = position.get("character"); - return LSPWorkspaceManager.getInstance().lspPrepareTypeHierarchy(request, file, line, col); + return LSPPlugin.getInstance().lspPrepareTypeHierarchy(request, file, line, col); } catch (URISyntaxException e) { @@ -104,7 +104,7 @@ private RPCMessageList supertypes(RPCRequest request) JSONObject item = params.get("item"); String classname = item.get("name"); - return LSPWorkspaceManager.getInstance().lspSupertypes(request, classname); + return LSPPlugin.getInstance().lspSupertypes(request, classname); } catch (Exception e) { @@ -122,7 +122,7 @@ private RPCMessageList subtypes(RPCRequest request) JSONObject item = params.get("item"); String classname = item.get("name"); - return LSPWorkspaceManager.getInstance().lspSubtypes(request, classname); + return LSPPlugin.getInstance().lspSubtypes(request, classname); } catch (Exception e) { diff --git a/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java b/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java index b8c46d2d1..054544235 100644 --- a/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java +++ b/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java @@ -38,7 +38,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; public class DidChangeWSHandler extends LSPHandler { @@ -80,7 +80,7 @@ private RPCMessageList didChangeWatchedFiles(RPCRequest request) { WatchKind type = WatchKind.kindOf(change.get("type")); File file = Utils.uriToFile(uri); - int code = LSPWorkspaceManager.getInstance().lspDidChangeWatchedFile(request, file, type); + int code = LSPPlugin.getInstance().lspDidChangeWatchedFile(request, file, type); if (code > actionCode) // Note: ordered severity { @@ -102,7 +102,7 @@ private RPCMessageList didChangeWatchedFiles(RPCRequest request) // Do rebuilding and type checking after ALL the changes are processed // This can return null, since didChangeWatchedFiles is a notification. - return LSPWorkspaceManager.getInstance().afterChangeWatchedFiles(request, actionCode, deleted); + return LSPPlugin.getInstance().afterChangeWatchedFiles(request, actionCode, deleted); } catch (URISyntaxException e) { diff --git a/lsp/src/main/java/workspace/DAPWorkspaceManager.java b/lsp/src/main/java/workspace/DAPWorkspaceManager.java index 160f387d5..0aa1ea8e4 100644 --- a/lsp/src/main/java/workspace/DAPWorkspaceManager.java +++ b/lsp/src/main/java/workspace/DAPWorkspaceManager.java @@ -164,7 +164,7 @@ public DAPMessageList dapInitialize(DAPRequest request, JSONObject clientCapabil public DAPMessageList dapLaunch(DAPRequest request, boolean noDebug, String defaultName, String command, String remoteControl, String logging) throws Exception { - LSPWorkspaceManager manager = LSPWorkspaceManager.getInstance(); + LSPPlugin manager = LSPPlugin.getInstance(); if (manager.checkInProgress()) { @@ -275,8 +275,8 @@ private void processSettings(DAPRequest request) } // System properties above override those from any properties file - Diag.info("Reading properties from %s", LSPWorkspaceManager.PROPERTIES); - Properties.init(LSPWorkspaceManager.PROPERTIES); + Diag.info("Reading properties from %s", LSPPlugin.PROPERTIES); + Properties.init(LSPPlugin.PROPERTIES); } } @@ -301,8 +301,8 @@ private void restoreSettings() } // Reset properties from the file - Diag.info("Resetting properties from %s", LSPWorkspaceManager.PROPERTIES); - Properties.init(LSPWorkspaceManager.PROPERTIES); + Diag.info("Resetting properties from %s", LSPPlugin.PROPERTIES); + Properties.init(LSPPlugin.PROPERTIES); } public DAPMessageList dapConfigurationDone(DAPRequest request) @@ -844,7 +844,7 @@ public DAPMessageList dapTerminate(DAPRequest request, Boolean restart) if (restart && !specHasErrors()) { stdout("\nSession restarting...\n"); - LSPWorkspaceManager lsp = LSPWorkspaceManager.getInstance(); + LSPPlugin lsp = LSPPlugin.getInstance(); lsp.restart(); } else diff --git a/lsp/src/main/java/workspace/EventListener.java b/lsp/src/main/java/workspace/EventListener.java index 7ec085634..4cebff874 100644 --- a/lsp/src/main/java/workspace/EventListener.java +++ b/lsp/src/main/java/workspace/EventListener.java @@ -34,12 +34,14 @@ */ public interface EventListener { + public final static int LSP_PRIORITY = Integer.getInteger("lspx.plugins.priority.lsp", 0); public final static int WS_PRIORITY = Integer.getInteger("lspx.plugins.priority.ws", 100); public final static int AST_PRIORITY = Integer.getInteger("lspx.plugins.priority.ast", 200); public final static int TC_PRIORITY = Integer.getInteger("lspx.plugins.priority.tc", 300); public final static int IN_PRIORITY = Integer.getInteger("lspx.plugins.priority.in", 400); public final static int PO_PRIORITY = Integer.getInteger("lspx.plugins.priority.po", 500); public final static int CT_PRIORITY = Integer.getInteger("lspx.plugins.priority.co", 600); + public final static int TR_PRIORITY = Integer.getInteger("lspx.plugins.priority.tr", 700); public final static int USER_PRIORITY = Integer.getInteger("lspx.plugins.priority.user", 1000); diff --git a/lsp/src/main/java/workspace/LSPWorkspaceManager.java b/lsp/src/main/java/workspace/LSPPlugin.java similarity index 87% rename from lsp/src/main/java/workspace/LSPWorkspaceManager.java rename to lsp/src/main/java/workspace/LSPPlugin.java index f8cd408c2..c8f1be8bc 100644 --- a/lsp/src/main/java/workspace/LSPWorkspaceManager.java +++ b/lsp/src/main/java/workspace/LSPPlugin.java @@ -32,6 +32,9 @@ import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; +import java.lang.reflect.Constructor; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; import java.net.URI; import java.nio.charset.Charset; import java.nio.file.Files; @@ -54,6 +57,7 @@ import com.fujitsu.vdmj.Settings; import com.fujitsu.vdmj.config.Properties; import com.fujitsu.vdmj.lex.BacktrackInputReader; +import com.fujitsu.vdmj.lex.Dialect; import com.fujitsu.vdmj.lex.LexLocation; import com.fujitsu.vdmj.messages.VDMWarning; import com.fujitsu.vdmj.runtime.SourceFile; @@ -68,16 +72,35 @@ import com.fujitsu.vdmj.tc.types.TCRecordType; import com.fujitsu.vdmj.tc.types.TCType; import com.fujitsu.vdmj.tc.types.TCTypeList; +import com.fujitsu.vdmj.util.GetResource; import json.JSONArray; import json.JSONObject; +import lsp.CancelHandler; +import lsp.ExitHandler; +import lsp.InitializeHandler; import lsp.LSPInitializeResponse; import lsp.LSPMessageUtils; import lsp.LSPServer; +import lsp.SetTraceNotificationHandler; +import lsp.ShutdownHandler; +import lsp.UnknownHandler; import lsp.Utils; +import lsp.textdocument.CodeLensHandler; +import lsp.textdocument.CompletionHandler; import lsp.textdocument.CompletionItemKind; import lsp.textdocument.CompletionTriggerKind; +import lsp.textdocument.DefinitionHandler; +import lsp.textdocument.DidChangeHandler; +import lsp.textdocument.DidCloseHandler; +import lsp.textdocument.DidOpenHandler; +import lsp.textdocument.DidSaveHandler; +import lsp.textdocument.DocumentSymbolHandler; +import lsp.textdocument.ReferencesHandler; +import lsp.textdocument.TypeHierarchyHandler; import lsp.textdocument.WatchKind; +import lsp.workspace.DidChangeWSHandler; +import rpc.RPCDispatcher; import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; @@ -95,14 +118,23 @@ import workspace.events.OpenFileEvent; import workspace.events.SaveFileEvent; import workspace.events.ShutdownEvent; +import workspace.events.UnknownMethodEvent; import workspace.plugins.ASTPlugin; +import workspace.plugins.AnalysisPlugin; +import workspace.plugins.CTPlugin; import workspace.plugins.INPlugin; +import workspace.plugins.POPlugin; import workspace.plugins.TCPlugin; +import workspace.plugins.TRPlugin; import workspace.plugins.WSPlugin; -public class LSPWorkspaceManager +/** + * The main AnalysisPlugin that deals with LSP protocol messages. This is + * created at startup by the LSP listener. + */ +public class LSPPlugin extends AnalysisPlugin { - private static LSPWorkspaceManager INSTANCE = null; + private static LSPPlugin INSTANCE = null; private PluginRegistry registry; private EventHub eventhub; private MessageHub messagehub; @@ -129,7 +161,7 @@ public class LSPWorkspaceManager private static final String EXTERNALS = ".vscode/externals"; public static final String PROPERTIES = ".vscode/vdmj.properties"; - private LSPWorkspaceManager() + private LSPPlugin() { registry = PluginRegistry.getInstance(); eventhub = EventHub.getInstance(); @@ -147,34 +179,75 @@ private LSPWorkspaceManager() Diag.info("Workspace created, encoding set to %s", encoding.displayName()); } } + + @Override + public int getPriority() + { + return EventListener.LSP_PRIORITY; + } + + @Override + public String getName() + { + return "LSP"; + } - public static synchronized LSPWorkspaceManager getInstance() + public static synchronized LSPPlugin getInstance() { if (INSTANCE == null) { - INSTANCE = new LSPWorkspaceManager(); + INSTANCE = new LSPPlugin(); /** * Register the built-in plugins. Others are registered in LSPXWorkspaceManager, * when the client capabilities have been received. */ PluginRegistry registry = PluginRegistry.getInstance(); + + registry.registerPlugin(INSTANCE); registry.registerPlugin(WSPlugin.factory(Settings.dialect)); registry.registerPlugin(ASTPlugin.factory(Settings.dialect)); registry.registerPlugin(TCPlugin.factory(Settings.dialect)); registry.registerPlugin(INPlugin.factory(Settings.dialect)); + registry.registerPlugin(TRPlugin.factory(Settings.dialect)); - Diag.info("Created LSPWorkspaceManager"); + Diag.info("Created LSPPlugin"); } return INSTANCE; } - + + @Override + public void init() + { + RPCDispatcher dispatcher = RPCDispatcher.getInstance(); + + dispatcher.register(new InitializeHandler(), "initialize", "initialized", "client/registerCapability"); + dispatcher.register(new ShutdownHandler(), "shutdown"); + dispatcher.register(new ExitHandler(), "exit"); + dispatcher.register(new CancelHandler(), "$/cancelRequest"); + dispatcher.register(new SetTraceNotificationHandler(), "$/setTraceNotification", "$/setTrace"); + + dispatcher.register(new DidOpenHandler(), "textDocument/didOpen"); + dispatcher.register(new DidCloseHandler(), "textDocument/didClose"); + dispatcher.register(new DidChangeHandler(), "textDocument/didChange"); + dispatcher.register(new DidSaveHandler(), "textDocument/didSave"); + dispatcher.register(new DefinitionHandler(), "textDocument/definition"); + dispatcher.register(new DocumentSymbolHandler(), "textDocument/documentSymbol"); + dispatcher.register(new CompletionHandler(), "textDocument/completion"); + dispatcher.register(new CodeLensHandler(), "textDocument/codeLens", "codeLens/resolve"); + dispatcher.register(new ReferencesHandler(), "textDocument/references"); + dispatcher.register(new TypeHierarchyHandler(), "textDocument/prepareTypeHierarchy", "typeHierarchy/supertypes", "typeHierarchy/subtypes"); + + dispatcher.register(new DidChangeWSHandler(), "workspace/didChangeWatchedFiles"); + + dispatcher.register(new UnknownHandler()); // Called for unknown methods + } + public static void reset() { Diag.config("Resetting WorkspaceManagers, PluginRegistry, EventHub and MessageHub"); - LSPXWorkspaceManager.reset(); DAPWorkspaceManager.reset(); DAPXWorkspaceManager.reset(); PluginRegistry.reset(); @@ -206,7 +279,7 @@ public RPCMessageList lspInitialize(RPCRequest request, JSONObject clientInfo, F this.clientCapabilities = clientCapabilities; this.openFiles.clear(); - LSPXWorkspaceManager.getInstance().enablePlugins(); + enablePlugins(); System.setProperty("vdmj.parser.tabstop", "1"); // Forced, for LSP location offsets Diag.info("Reading properties from %s", PROPERTIES); @@ -235,6 +308,98 @@ public RPCMessageList lspInitialized(RPCRequest request) } } + /** + * This is called after the client capabilities have been received. If the option + * is enabled in the capabilities, the relevant plugin is registered. + * + * PO and CT are built-in, but still enabled by the capabilities. + * + * Further plugins may be loaded via the property "lspx.plugins". + * @throws Exception + */ + private void enablePlugins() throws Exception + { + if (hasClientCapability("experimental.proofObligationGeneration")) + { + registry.registerPlugin(POPlugin.factory(Settings.dialect)); + } + + if (hasClientCapability("experimental.combinatorialTesting")) + { + registry.registerPlugin(CTPlugin.factory(Settings.dialect)); + } + + List plugins = GetResource.readResource("lspx.plugins"); + + if (!plugins.isEmpty()) + { + for (String plugin: plugins) + { + try + { + Class clazz = Class.forName(plugin); + + try + { + Method factory = clazz.getMethod("factory", Dialect.class); + AnalysisPlugin instance = (AnalysisPlugin)factory.invoke(null, Settings.dialect); + registry.registerPlugin(instance); + Diag.info("Registered LSPX plugin %s", plugin); + } + catch (NoSuchMethodException e) // Try default constructor + { + try + { + if (Modifier.isAbstract(clazz.getModifiers())) + { + Diag.severe("Plugin class is abstract: %s", clazz.getName()); + continue; + } + + Constructor ctor = clazz.getConstructor(); + AnalysisPlugin instance = (AnalysisPlugin) ctor.newInstance(); + registry.registerPlugin(instance); + Diag.info("Registered LSPX plugin %s", plugin); + } + catch (Throwable th) + { + Diag.error(th); + Diag.error("Cannot register LSPX plugin %s", plugin); + } + } + catch (Exception e) + { + Diag.error(e); + Diag.error("Plugin %s factory method failed", plugin); + } + } + catch (ClassNotFoundException e) + { + Diag.error("Plugin class %s not found", plugin); + } + } + } + else + { + Diag.info("No external plugins configured in lspx.plugins"); + } + } + + public RPCMessageList unhandledMethod(RPCRequest request) + { + RPCMessageList results = eventhub.publish(new UnknownMethodEvent(request)); + + if (results.isEmpty()) + { + Diag.error("No external plugin registered for " + request.getMethod()); + return new RPCMessageList(request, RPCErrors.MethodNotFound, request.getMethod()); + } + else + { + return results; + } + } + public boolean hasClientCapability(String dotName) // eg. "workspace.workspaceFolders" { Object cap = getClientCapability(dotName); diff --git a/lsp/src/main/java/workspace/MessageHub.java b/lsp/src/main/java/workspace/MessageHub.java index 160b50e70..0a6ffb3bb 100644 --- a/lsp/src/main/java/workspace/MessageHub.java +++ b/lsp/src/main/java/workspace/MessageHub.java @@ -226,7 +226,7 @@ public synchronized void clear() */ public RPCMessageList getDiagnosticResponses() { - Set files = LSPWorkspaceManager.getInstance().getProjectFiles().keySet(); + Set files = LSPPlugin.getInstance().getProjectFiles().keySet(); return getDiagnosticResponses(files); } diff --git a/lsp/src/main/java/workspace/lenses/CodeLens.java b/lsp/src/main/java/workspace/lenses/CodeLens.java index 2fe07ecf2..0f7f00230 100644 --- a/lsp/src/main/java/workspace/lenses/CodeLens.java +++ b/lsp/src/main/java/workspace/lenses/CodeLens.java @@ -29,7 +29,7 @@ import json.JSONObject; import lsp.Utils; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; /** * The base class for all code lenses. @@ -43,7 +43,7 @@ abstract public class CodeLens */ protected String getClientName() { - return LSPWorkspaceManager.getInstance().getClientInfo("name"); + return LSPPlugin.getInstance().getClientInfo("name"); } /** diff --git a/lsp/src/main/java/workspace/plugins/ASTPlugin.java b/lsp/src/main/java/workspace/plugins/ASTPlugin.java index 99bdc70ed..b19688820 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPlugin.java +++ b/lsp/src/main/java/workspace/plugins/ASTPlugin.java @@ -53,7 +53,7 @@ import rpc.RPCRequest; import workspace.Diag; import workspace.EventListener; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import workspace.events.ChangeFileEvent; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; @@ -149,7 +149,7 @@ else if (event instanceof CheckSyntaxEvent) private RPCMessageList lspDynamicRegistrations() { RPCMessageList registrations = new RPCMessageList(); - LSPWorkspaceManager manager = LSPWorkspaceManager.getInstance(); + LSPPlugin manager = LSPPlugin.getInstance(); if (manager.hasClientCapability("workspace.didChangeWatchedFiles.dynamicRegistration")) { diff --git a/lsp/src/main/java/workspace/plugins/ASTPluginPR.java b/lsp/src/main/java/workspace/plugins/ASTPluginPR.java index 891a79375..06055c409 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPluginPR.java +++ b/lsp/src/main/java/workspace/plugins/ASTPluginPR.java @@ -46,7 +46,7 @@ import json.JSONArray; import lsp.textdocument.SymbolKind; import workspace.Diag; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; import workspace.lenses.ASTCodeLens; @@ -74,7 +74,7 @@ public void checkLoadedFiles(CheckSyntaxEvent event) dirty = false; dirtyClassList = null; - Map projectFiles = LSPWorkspaceManager.getInstance().getProjectFiles(); + Map projectFiles = LSPPlugin.getInstance().getProjectFiles(); LexLocation.resetLocations(); if (Settings.dialect == Dialect.VDM_RT) @@ -147,7 +147,7 @@ protected void parseFile(File file) { dirty = true; // Until saved. - Map projectFiles = LSPWorkspaceManager.getInstance().getProjectFiles(); + Map projectFiles = LSPPlugin.getInstance().getProjectFiles(); StringBuilder buffer = projectFiles.get(file); LexTokenReader ltr = new LexTokenReader(buffer.toString(), Settings.dialect, file); diff --git a/lsp/src/main/java/workspace/plugins/ASTPluginSL.java b/lsp/src/main/java/workspace/plugins/ASTPluginSL.java index ac530147a..cf731b5a0 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPluginSL.java +++ b/lsp/src/main/java/workspace/plugins/ASTPluginSL.java @@ -42,7 +42,7 @@ import json.JSONArray; import lsp.textdocument.SymbolKind; -import workspace.LSPWorkspaceManager; +import workspace.LSPPlugin; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; import workspace.lenses.ASTCodeLens; @@ -68,7 +68,7 @@ protected void preCheck(CheckPrepareEvent ev) public void checkLoadedFiles(CheckSyntaxEvent event) { dirty = false; - Map projectFiles = LSPWorkspaceManager.getInstance().getProjectFiles(); + Map projectFiles = LSPPlugin.getInstance().getProjectFiles(); LexLocation.resetLocations(); for (Entry entry: projectFiles.entrySet()) @@ -102,7 +102,7 @@ protected void parseFile(File file) dirty = true; // Until saved. dirtyModuleList = null; - Map projectFiles = LSPWorkspaceManager.getInstance().getProjectFiles(); + Map projectFiles = LSPPlugin.getInstance().getProjectFiles(); StringBuilder buffer = projectFiles.get(file); LexTokenReader ltr = new LexTokenReader(buffer.toString(), Settings.dialect, file); diff --git a/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java b/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java index 228eb343d..00dd6758d 100644 --- a/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java +++ b/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java @@ -29,6 +29,7 @@ import dap.DAPMessageList; import json.JSONObject; import lsp.LSPMessageUtils; +import rpc.RPCDispatcher; import rpc.RPCErrors; import rpc.RPCMessageList; import vdmj.commands.AnalysisCommand; @@ -41,6 +42,7 @@ abstract public class AnalysisPlugin { + protected final RPCDispatcher dispatcher; protected final LSPMessageUtils messages; protected final PluginRegistry registry; protected final EventHub eventhub; @@ -48,6 +50,7 @@ abstract public class AnalysisPlugin public AnalysisPlugin() { + dispatcher = RPCDispatcher.getInstance(); messages = new LSPMessageUtils(); registry = PluginRegistry.getInstance(); eventhub = EventHub.getInstance(); diff --git a/lsp/src/main/java/workspace/plugins/CTPlugin.java b/lsp/src/main/java/workspace/plugins/CTPlugin.java index 50cd9b5c8..7b2d79031 100644 --- a/lsp/src/main/java/workspace/plugins/CTPlugin.java +++ b/lsp/src/main/java/workspace/plugins/CTPlugin.java @@ -24,6 +24,7 @@ package workspace.plugins; +import java.io.File; import java.io.IOException; import java.util.List; import java.util.Map; @@ -50,6 +51,8 @@ import lsp.CancellableThread; import lsp.LSPException; import lsp.LSPServer; +import lsp.Utils; +import lsp.lspx.CTHandler; import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; @@ -116,6 +119,8 @@ public int getPriority() @Override public void init() { + dispatcher.register(new CTHandler(), "slsp/CT/traces", "slsp/CT/generate", "slsp/CT/execute"); + eventhub.register(CheckPrepareEvent.class, this); eventhub.register(CheckCompleteEvent.class, this); eventhub.register(DAPBeforeEvaluateEvent.class, this); @@ -201,6 +206,126 @@ public HelpList getCommandHelp() abstract public T getCT(); + + public RPCMessageList ctTraces(RPCRequest request, File project) + { + try + { + if (messagehub.hasErrors()) + { + return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); + } + + DAPWorkspaceManager.getInstance().refreshInterpreter(); + CTPlugin ct = registry.getPlugin("CT"); + Map nameMap = ct.getTraceNames(); + JSONArray results = new JSONArray(); + + for (String module: nameMap.keySet()) + { + JSONArray array = new JSONArray(); + + for (TCNameToken name: nameMap.get(module)) + { + array.add(new JSONObject( + "name", name.getExplicit(true).toString(), + "location", Utils.lexLocationToLocation(name.getLocation()))); + } + + results.add(new JSONObject("name", module, "traces", array)); + } + + return new RPCMessageList(request, results); + } + catch (Exception e) + { + Diag.error(e); + return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); + } + } + + public RPCMessageList ctGenerate(RPCRequest request, String name) + { + try + { + if (messagehub.hasErrors()) + { + return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); + } + + CTPlugin ct = registry.getPlugin("CT"); + + if (ct.isRunning()) + { + return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); + } + + DAPWorkspaceManager.getInstance().refreshInterpreter(); + TCNameToken tracename = Utils.stringToName(name); + int count = ct.generate(tracename); + return new RPCMessageList(request, new JSONObject("numberOfTests", count)); + } + catch (LSPException e) + { + Diag.error(e); + return new RPCMessageList(request, e.getError(), e.getMessage()); + } + catch (Exception e) + { + Diag.error(e); + return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); + } + } + + public RPCMessageList ctExecute(RPCRequest request, String name, + Object progressToken, Object workDoneToken, + TraceReductionType rType, float subset, long seed, Long start, Long end) + { + try + { + if (messagehub.hasErrors()) + { + return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); + } + + TCNameToken tracename = Utils.stringToName(name); + CTPlugin ct = registry.getPlugin("CT"); + + if (ct.isRunning()) + { + return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); + } + + if (DAPWorkspaceManager.getInstance().refreshInterpreter()) + { + Diag.error("The spec has changed since generate, so re-generating"); + ct.generate(tracename); + } + + JSONArray batch = ct.runTraceRange(request, tracename, progressToken, workDoneToken, + rType, subset, seed, start, end); + + if (batch == null) // Running in background + { + return null; + } + else + { + return new RPCMessageList(request, batch); + } + } + catch (LSPException e) + { + Diag.error(e); + return new RPCMessageList(request, e.getError(), e.getMessage()); + } + catch (Exception e) + { + Diag.error(e); + return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); + } + } + public int generate(TCNameToken tracename) throws LSPException { Interpreter interpreter = DAPWorkspaceManager.getInstance().getInterpreter(); diff --git a/lsp/src/main/java/workspace/plugins/POPlugin.java b/lsp/src/main/java/workspace/plugins/POPlugin.java index 53eb124fb..2ffccbd7a 100644 --- a/lsp/src/main/java/workspace/plugins/POPlugin.java +++ b/lsp/src/main/java/workspace/plugins/POPlugin.java @@ -34,6 +34,8 @@ import json.JSONArray; import json.JSONObject; import lsp.Utils; +import lsp.lspx.POGHandler; +import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; @@ -82,6 +84,8 @@ public int getPriority() @Override public void init() { + dispatcher.register(new POGHandler(), "slsp/POG/generate"); + eventhub.register(CheckPrepareEvent.class, this); eventhub.register(CheckCompleteEvent.class, this); } @@ -153,6 +157,24 @@ protected JSONArray splitPO(String value) return array; } + public RPCMessageList pogGenerate(RPCRequest request, File file) + { + try + { + if (messagehub.hasErrors()) // No clean tree + { + return new RPCMessageList(request, RPCErrors.InvalidRequest, "Specification errors found"); + } + + return getJSONObligations(request, file); + } + catch (Exception e) + { + Diag.error(e); + return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); + } + } + public RPCMessageList getJSONObligations(RPCRequest request, File file) { JSONArray poList = new JSONArray(); diff --git a/lsp/src/main/java/workspace/LSPXWorkspaceManager.java b/lsp/src/main/java/workspace/plugins/TRPlugin.java similarity index 51% rename from lsp/src/main/java/workspace/LSPXWorkspaceManager.java rename to lsp/src/main/java/workspace/plugins/TRPlugin.java index cb121980d..c0a5a7c1b 100644 --- a/lsp/src/main/java/workspace/LSPXWorkspaceManager.java +++ b/lsp/src/main/java/workspace/plugins/TRPlugin.java @@ -1,6 +1,6 @@ /******************************************************************************* * - * Copyright (c) 2020 Nick Battle. + * Copyright (c) 2023 Nick Battle. * * Author: Nick Battle * @@ -22,317 +22,65 @@ * ******************************************************************************/ -package workspace; +package workspace.plugins; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintWriter; -import java.lang.reflect.Constructor; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.List; import java.util.Map; import java.util.Set; -import com.fujitsu.vdmj.Settings; import com.fujitsu.vdmj.lex.Dialect; import com.fujitsu.vdmj.runtime.SourceFile; -import com.fujitsu.vdmj.tc.lex.TCNameList; -import com.fujitsu.vdmj.tc.lex.TCNameToken; -import com.fujitsu.vdmj.traces.TraceReductionType; -import com.fujitsu.vdmj.util.GetResource; -import json.JSONArray; import json.JSONObject; -import lsp.LSPException; -import lsp.Utils; +import lsp.lspx.TranslateHandler; import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.events.UnknownMethodEvent; -import workspace.plugins.AnalysisPlugin; -import workspace.plugins.CTPlugin; -import workspace.plugins.POPlugin; -import workspace.plugins.TCPlugin; +import workspace.EventListener; +import workspace.LSPPlugin; -public class LSPXWorkspaceManager +/** + * The translate plugin. + */ +public class TRPlugin extends AnalysisPlugin implements EventListener { - private static LSPXWorkspaceManager INSTANCE = null; - private final PluginRegistry registry; - private final EventHub eventhub; - private final MessageHub messagehub; - private final LSPWorkspaceManager wsManager; + private final LSPPlugin lspPlugin; - protected LSPXWorkspaceManager() + public static AnalysisPlugin factory(Dialect dialect) { - this.registry = PluginRegistry.getInstance(); - this.eventhub = EventHub.getInstance(); - this.messagehub = MessageHub.getInstance(); - this.wsManager = LSPWorkspaceManager.getInstance(); - } - - public static synchronized LSPXWorkspaceManager getInstance() - { - if (INSTANCE == null) - { - INSTANCE = new LSPXWorkspaceManager(); - Diag.info("Created LSPXWorkspaceManager"); - } - - return INSTANCE; - } - - /** - * This is called after the client capabilities have been received. If the option - * is enabled in the capabilities, the relevant plugin is registered. - * - * PO and CT are built-in, but still enabled by the capabilities. - * - * Further plugins may be loaded via the property "lspx.plugins". - * @throws Exception - */ - public void enablePlugins() throws Exception - { - if (wsManager.hasClientCapability("experimental.proofObligationGeneration")) - { - registry.registerPlugin(POPlugin.factory(Settings.dialect)); - } - - if (wsManager.hasClientCapability("experimental.combinatorialTesting")) - { - registry.registerPlugin(CTPlugin.factory(Settings.dialect)); - } - - List plugins = GetResource.readResource("lspx.plugins"); - - if (!plugins.isEmpty()) - { - for (String plugin: plugins) - { - try - { - Class clazz = Class.forName(plugin); - - try - { - Method factory = clazz.getMethod("factory", Dialect.class); - AnalysisPlugin instance = (AnalysisPlugin)factory.invoke(null, Settings.dialect); - registry.registerPlugin(instance); - Diag.info("Registered LSPX plugin %s", plugin); - } - catch (NoSuchMethodException e) // Try default constructor - { - try - { - if (Modifier.isAbstract(clazz.getModifiers())) - { - Diag.severe("Plugin class is abstract: %s", clazz.getName()); - continue; - } - - Constructor ctor = clazz.getConstructor(); - AnalysisPlugin instance = (AnalysisPlugin) ctor.newInstance(); - registry.registerPlugin(instance); - Diag.info("Registered LSPX plugin %s", plugin); - } - catch (Throwable th) - { - Diag.error(th); - Diag.error("Cannot register LSPX plugin %s", plugin); - } - } - catch (Exception e) - { - Diag.error(e); - Diag.error("Plugin %s factory method failed", plugin); - } - } - catch (ClassNotFoundException e) - { - Diag.error("Plugin class %s not found", plugin); - } - } - } - else - { - Diag.info("No external plugins configured in lspx.plugins"); - } - } - - public RPCMessageList unhandledMethod(RPCRequest request) - { - RPCMessageList results = eventhub.publish(new UnknownMethodEvent(request)); - - if (results.isEmpty()) - { - Diag.error("No external plugin registered for " + request.getMethod()); - return new RPCMessageList(request, RPCErrors.MethodNotFound, request.getMethod()); - } - else + switch (dialect) { - return results; - } - } - - /** - * Reset the singleton. - */ - public static void reset() - { - if (INSTANCE != null) - { - INSTANCE = null; + default: + return new TRPlugin(); } } - /** - * LSPX extensions... - */ - - public RPCMessageList pogGenerate(RPCRequest request, File file) + private TRPlugin() { - try - { - if (messagehub.hasErrors()) // No clean tree - { - return new RPCMessageList(request, RPCErrors.InvalidRequest, "Specification errors found"); - } - - POPlugin po = registry.getPlugin("PO"); - return po.getJSONObligations(request, file); - } - catch (Exception e) - { - Diag.error(e); - return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); - } + lspPlugin = registry.getPlugin("LSP"); } - - public RPCMessageList ctTraces(RPCRequest request, File project) + + @Override + public int getPriority() { - try - { - if (specHasErrors()) - { - return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); - } - - DAPWorkspaceManager.getInstance().refreshInterpreter(); - CTPlugin ct = registry.getPlugin("CT"); - Map nameMap = ct.getTraceNames(); - JSONArray results = new JSONArray(); - - for (String module: nameMap.keySet()) - { - JSONArray array = new JSONArray(); - - for (TCNameToken name: nameMap.get(module)) - { - array.add(new JSONObject( - "name", name.getExplicit(true).toString(), - "location", Utils.lexLocationToLocation(name.getLocation()))); - } - - results.add(new JSONObject("name", module, "traces", array)); - } - - return new RPCMessageList(request, results); - } - catch (Exception e) - { - Diag.error(e); - return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); - } + return EventListener.TR_PRIORITY; } - public RPCMessageList ctGenerate(RPCRequest request, String name) + @Override + public String getName() { - try - { - if (specHasErrors()) - { - return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); - } - - CTPlugin ct = registry.getPlugin("CT"); - - if (ct.isRunning()) - { - return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); - } - - DAPWorkspaceManager.getInstance().refreshInterpreter(); - TCNameToken tracename = Utils.stringToName(name); - int count = ct.generate(tracename); - return new RPCMessageList(request, new JSONObject("numberOfTests", count)); - } - catch (LSPException e) - { - Diag.error(e); - return new RPCMessageList(request, e.getError(), e.getMessage()); - } - catch (Exception e) - { - Diag.error(e); - return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); - } + return "TR"; } - public RPCMessageList ctExecute(RPCRequest request, String name, - Object progressToken, Object workDoneToken, - TraceReductionType rType, float subset, long seed, Long start, Long end) - { - try - { - if (specHasErrors()) - { - return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); - } - - TCNameToken tracename = Utils.stringToName(name); - CTPlugin ct = registry.getPlugin("CT"); - - if (ct.isRunning()) - { - return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); - } - - if (DAPWorkspaceManager.getInstance().refreshInterpreter()) - { - Diag.error("The spec has changed since generate, so re-generating"); - ct.generate(tracename); - } - - JSONArray batch = ct.runTraceRange(request, tracename, progressToken, workDoneToken, - rType, subset, seed, start, end); - - if (batch == null) // Running in background - { - return null; - } - else - { - return new RPCMessageList(request, batch); - } - } - catch (LSPException e) - { - Diag.error(e); - return new RPCMessageList(request, e.getError(), e.getMessage()); - } - catch (Exception e) - { - Diag.error(e); - return new RPCMessageList(request, RPCErrors.InternalError, e.getMessage()); - } - } - - private boolean specHasErrors() + @Override + public void init() { - return messagehub.hasErrors(); + dispatcher.register(new TranslateHandler(), "slsp/TR/translate"); } /** @@ -340,7 +88,7 @@ private boolean specHasErrors() */ private File getSubFolder(File saveUri, File file) { - File root = wsManager.getRoot(); + File root = lspPlugin.getRoot(); if (file.getParent().startsWith(root.getPath())) { @@ -356,7 +104,7 @@ private File getSubFolder(File saveUri, File file) public RPCMessageList translateLaTeX(RPCRequest request, File file, File saveUri, JSONObject options) { File responseFile = null; - Map filemap = wsManager.getProjectFiles(); + Map filemap = lspPlugin.getProjectFiles(); try { @@ -383,7 +131,7 @@ else if (file.isDirectory()) } } - if (file.equals(wsManager.getRoot())) + if (file.equals(lspPlugin.getRoot())) { createLaTeXDocument(saveUri, filemap.keySet()); } @@ -409,7 +157,7 @@ else if (filemap.containsKey(file)) private void createLaTeXDocument(File saveUri, Set sources) throws IOException { - String project = wsManager.getRoot().getName(); + String project = lspPlugin.getRoot().getName(); File document = new File(saveUri, project + ".tex"); PrintWriter out = new PrintWriter(new FileOutputStream(document)); @@ -425,7 +173,7 @@ private void createLaTeXDocument(File saveUri, Set sources) throws IOExcep out.println("\\tableofcontents"); out.println(); - Path sourceBase = Paths.get(wsManager.getRoot().getAbsolutePath()); + Path sourceBase = Paths.get(lspPlugin.getRoot().getAbsolutePath()); for (File pfile: sources) { @@ -485,7 +233,7 @@ private File fileToLaTeX(File saveUri, File file, JSONObject options) throws IOE public RPCMessageList translateWord(RPCRequest request, File file, File saveUri, JSONObject options) { File responseFile = null; - Map filemap = wsManager.getProjectFiles(); + Map filemap = lspPlugin.getProjectFiles(); try { @@ -547,7 +295,7 @@ private File fileToWord(File saveUri, File file) throws IOException public RPCMessageList translateCoverage(RPCRequest request, File file, File saveUri, JSONObject options) { File responseFile = null; - Map filemap = wsManager.getProjectFiles(); + Map filemap = lspPlugin.getProjectFiles(); try { diff --git a/lsp/src/test/java/lsp/DAPTest.java b/lsp/src/test/java/lsp/DAPTest.java index 36c07c2e1..3ee3b2a70 100644 --- a/lsp/src/test/java/lsp/DAPTest.java +++ b/lsp/src/test/java/lsp/DAPTest.java @@ -40,13 +40,11 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; abstract public class DAPTest { - protected LSPWorkspaceManager lspManager = null; - protected LSPXWorkspaceManager lspxManager = null; + protected LSPPlugin lspManager = null; protected DAPWorkspaceManager dapManager = null; protected DAPXWorkspaceManager dapxManager = null; @@ -58,9 +56,8 @@ abstract public class DAPTest protected void setupWorkspace(Dialect dialect) throws IOException { Settings.dialect = dialect; - LSPWorkspaceManager.reset(); // Clears other managers, registry and hubs too - lspManager = LSPWorkspaceManager.getInstance(); - lspxManager = LSPXWorkspaceManager.getInstance(); + LSPPlugin.reset(); // Clears other managers, registry and hubs too + lspManager = LSPPlugin.getInstance(); dapManager = DAPWorkspaceManager.getInstance(); dapxManager = DAPXWorkspaceManager.getInstance(); } diff --git a/lsp/src/test/java/lsp/LSPTest.java b/lsp/src/test/java/lsp/LSPTest.java index 74acd172f..2c19a242d 100644 --- a/lsp/src/test/java/lsp/LSPTest.java +++ b/lsp/src/test/java/lsp/LSPTest.java @@ -40,13 +40,11 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; abstract public class LSPTest { - protected LSPWorkspaceManager lspManager = null; - protected LSPXWorkspaceManager lspxManager = null; + protected LSPPlugin lspManager = null; protected DAPWorkspaceManager dapManager = null; protected DAPXWorkspaceManager dapxManager = null; @@ -58,9 +56,8 @@ abstract public class LSPTest protected void setupWorkspace(Dialect dialect) throws IOException { Settings.dialect = dialect; - LSPWorkspaceManager.reset(); // resets other managers, registry and hubs - lspManager = LSPWorkspaceManager.getInstance(); - lspxManager = LSPXWorkspaceManager.getInstance(); + LSPPlugin.reset(); // resets other managers, registry and hubs + lspManager = LSPPlugin.getInstance(); dapManager = DAPWorkspaceManager.getInstance(); dapxManager = DAPXWorkspaceManager.getInstance(); } diff --git a/quickcheck/src/test/java/tests/LSPTest.java b/quickcheck/src/test/java/tests/LSPTest.java index d0084b400..e010eb4f1 100644 --- a/quickcheck/src/test/java/tests/LSPTest.java +++ b/quickcheck/src/test/java/tests/LSPTest.java @@ -40,13 +40,11 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPWorkspaceManager; -import workspace.LSPXWorkspaceManager; +import workspace.LSPPlugin; abstract public class LSPTest { - protected LSPWorkspaceManager lspManager = null; - protected LSPXWorkspaceManager lspxManager = null; + protected LSPPlugin lspManager = null; protected DAPWorkspaceManager dapManager = null; protected DAPXWorkspaceManager dapxManager = null; @@ -58,9 +56,8 @@ abstract public class LSPTest protected void setupWorkspace(Dialect dialect) throws IOException { Settings.dialect = dialect; - LSPWorkspaceManager.reset(); // resets other managers, registry and hubs - lspManager = LSPWorkspaceManager.getInstance(); - lspxManager = LSPXWorkspaceManager.getInstance(); + LSPPlugin.reset(); // resets other managers, registry and hubs + lspManager = LSPPlugin.getInstance(); dapManager = DAPWorkspaceManager.getInstance(); dapxManager = DAPXWorkspaceManager.getInstance(); } From b43c84b158cfeebeb7639e2702a748af4f769f46 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Tue, 23 Apr 2024 09:21:36 +0100 Subject: [PATCH 2/8] Move LSPPlugin to plugins package --- .../v2c/src/test/java/plugins/LSPTest.java | 2 +- lsp/src/main/java/lsp/InitializeHandler.java | 3 ++- .../main/java/lsp/LSPInitializeResponse.java | 2 +- lsp/src/main/java/lsp/LSPServer.java | 2 +- lsp/src/main/java/lsp/ShutdownHandler.java | 2 +- lsp/src/main/java/lsp/UnknownHandler.java | 2 +- lsp/src/main/java/lsp/lspx/CTHandler.java | 2 +- lsp/src/main/java/lsp/lspx/POGHandler.java | 2 +- .../main/java/lsp/lspx/TranslateHandler.java | 2 +- .../lsp/textdocument/CodeLensHandler.java | 2 +- .../lsp/textdocument/CompletionHandler.java | 2 +- .../lsp/textdocument/DefinitionHandler.java | 2 +- .../lsp/textdocument/DidChangeHandler.java | 2 +- .../lsp/textdocument/DidCloseHandler.java | 2 +- .../java/lsp/textdocument/DidOpenHandler.java | 2 +- .../java/lsp/textdocument/DidSaveHandler.java | 2 +- .../textdocument/DocumentSymbolHandler.java | 2 +- .../lsp/textdocument/ReferencesHandler.java | 2 +- .../textdocument/TypeHierarchyHandler.java | 2 +- .../lsp/workspace/DidChangeWSHandler.java | 2 +- .../java/workspace/DAPWorkspaceManager.java | 1 + lsp/src/main/java/workspace/MessageHub.java | 1 + .../main/java/workspace/lenses/CodeLens.java | 2 +- .../java/workspace/plugins/ASTPlugin.java | 1 - .../java/workspace/plugins/ASTPluginPR.java | 1 - .../java/workspace/plugins/ASTPluginSL.java | 1 - .../workspace/{ => plugins}/LSPPlugin.java | 23 ++++++++++--------- .../main/java/workspace/plugins/TRPlugin.java | 1 - lsp/src/test/java/lsp/DAPTest.java | 2 +- lsp/src/test/java/lsp/LSPTest.java | 2 +- quickcheck/src/test/java/tests/LSPTest.java | 2 +- 31 files changed, 39 insertions(+), 39 deletions(-) rename lsp/src/main/java/workspace/{ => plugins}/LSPPlugin.java (99%) diff --git a/examples/v2c/src/test/java/plugins/LSPTest.java b/examples/v2c/src/test/java/plugins/LSPTest.java index f55cdb4a1..208221ef2 100644 --- a/examples/v2c/src/test/java/plugins/LSPTest.java +++ b/examples/v2c/src/test/java/plugins/LSPTest.java @@ -38,7 +38,7 @@ import rpc.RPCRequest; import workspace.DAPWorkspaceManager; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; abstract public class LSPTest { diff --git a/lsp/src/main/java/lsp/InitializeHandler.java b/lsp/src/main/java/lsp/InitializeHandler.java index c21f38d56..675c639b7 100644 --- a/lsp/src/main/java/lsp/InitializeHandler.java +++ b/lsp/src/main/java/lsp/InitializeHandler.java @@ -27,7 +27,8 @@ import rpc.RPCRequest; import rpc.RPCResponse; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; + import java.io.File; import java.net.URISyntaxException; diff --git a/lsp/src/main/java/lsp/LSPInitializeResponse.java b/lsp/src/main/java/lsp/LSPInitializeResponse.java index bf29679f7..2194a4a36 100644 --- a/lsp/src/main/java/lsp/LSPInitializeResponse.java +++ b/lsp/src/main/java/lsp/LSPInitializeResponse.java @@ -27,8 +27,8 @@ import dap.DAPServerSocket; import json.JSONArray; import json.JSONObject; -import workspace.LSPPlugin; import workspace.PluginRegistry; +import workspace.plugins.LSPPlugin; public class LSPInitializeResponse extends JSONObject { diff --git a/lsp/src/main/java/lsp/LSPServer.java b/lsp/src/main/java/lsp/LSPServer.java index d499996ab..6c5c55721 100644 --- a/lsp/src/main/java/lsp/LSPServer.java +++ b/lsp/src/main/java/lsp/LSPServer.java @@ -43,7 +43,7 @@ import rpc.RPCResponse; import vdmj.DAPDebugLink; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class LSPServer extends JSONServer implements VDMJMain { diff --git a/lsp/src/main/java/lsp/ShutdownHandler.java b/lsp/src/main/java/lsp/ShutdownHandler.java index 279761ed5..ad1fc76e0 100644 --- a/lsp/src/main/java/lsp/ShutdownHandler.java +++ b/lsp/src/main/java/lsp/ShutdownHandler.java @@ -25,7 +25,7 @@ package lsp; import rpc.RPCRequest; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; import rpc.RPCMessageList; public class ShutdownHandler extends LSPHandler diff --git a/lsp/src/main/java/lsp/UnknownHandler.java b/lsp/src/main/java/lsp/UnknownHandler.java index 166c03291..95105cf7d 100644 --- a/lsp/src/main/java/lsp/UnknownHandler.java +++ b/lsp/src/main/java/lsp/UnknownHandler.java @@ -25,7 +25,7 @@ package lsp; import rpc.RPCRequest; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; import rpc.RPCMessageList; public class UnknownHandler extends LSPHandler diff --git a/lsp/src/main/java/lsp/lspx/CTHandler.java b/lsp/src/main/java/lsp/lspx/CTHandler.java index 482d743e3..47c846d3a 100644 --- a/lsp/src/main/java/lsp/lspx/CTHandler.java +++ b/lsp/src/main/java/lsp/lspx/CTHandler.java @@ -37,8 +37,8 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; import workspace.plugins.CTPlugin; +import workspace.plugins.LSPPlugin; public class CTHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/lspx/POGHandler.java b/lsp/src/main/java/lsp/lspx/POGHandler.java index 4d53cb623..5a3e99527 100644 --- a/lsp/src/main/java/lsp/lspx/POGHandler.java +++ b/lsp/src/main/java/lsp/lspx/POGHandler.java @@ -35,7 +35,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; import workspace.plugins.POPlugin; public class POGHandler extends LSPHandler diff --git a/lsp/src/main/java/lsp/lspx/TranslateHandler.java b/lsp/src/main/java/lsp/lspx/TranslateHandler.java index a526b20ba..9b25080e0 100644 --- a/lsp/src/main/java/lsp/lspx/TranslateHandler.java +++ b/lsp/src/main/java/lsp/lspx/TranslateHandler.java @@ -36,9 +36,9 @@ import rpc.RPCRequest; import workspace.Diag; import workspace.EventHub; -import workspace.LSPPlugin; import workspace.MessageHub; import workspace.events.UnknownTranslationEvent; +import workspace.plugins.LSPPlugin; import workspace.plugins.TRPlugin; public class TranslateHandler extends LSPHandler diff --git a/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java b/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java index 9cd17d43f..0ae77d329 100644 --- a/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java +++ b/lsp/src/main/java/lsp/textdocument/CodeLensHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class CodeLensHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/CompletionHandler.java b/lsp/src/main/java/lsp/textdocument/CompletionHandler.java index 4a9127622..2cb2b3589 100644 --- a/lsp/src/main/java/lsp/textdocument/CompletionHandler.java +++ b/lsp/src/main/java/lsp/textdocument/CompletionHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class CompletionHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java b/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java index 3913f422b..cd5b48d9f 100644 --- a/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DefinitionHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DefinitionHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java b/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java index f981e1afe..1fdabbad2 100644 --- a/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidChangeHandler.java @@ -35,7 +35,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DidChangeHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java b/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java index 115b81a1e..10bde6794 100644 --- a/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidCloseHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DidCloseHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java b/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java index c41375025..f52315034 100644 --- a/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidOpenHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DidOpenHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java b/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java index 317e0e092..24631c9d0 100644 --- a/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DidSaveHandler.java @@ -33,7 +33,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DidSaveHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java b/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java index 95af43f22..34ce240ca 100644 --- a/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java +++ b/lsp/src/main/java/lsp/textdocument/DocumentSymbolHandler.java @@ -34,7 +34,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DocumentSymbolHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java b/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java index 4c4170fc8..ea26ac4e6 100644 --- a/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java +++ b/lsp/src/main/java/lsp/textdocument/ReferencesHandler.java @@ -33,7 +33,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class ReferencesHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java b/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java index 0cdf1e929..a6be13c2b 100644 --- a/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java +++ b/lsp/src/main/java/lsp/textdocument/TypeHierarchyHandler.java @@ -37,7 +37,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class TypeHierarchyHandler extends LSPHandler { diff --git a/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java b/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java index 054544235..5f54969ff 100644 --- a/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java +++ b/lsp/src/main/java/lsp/workspace/DidChangeWSHandler.java @@ -38,7 +38,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; public class DidChangeWSHandler extends LSPHandler { diff --git a/lsp/src/main/java/workspace/DAPWorkspaceManager.java b/lsp/src/main/java/workspace/DAPWorkspaceManager.java index 0aa1ea8e4..2b0296300 100644 --- a/lsp/src/main/java/workspace/DAPWorkspaceManager.java +++ b/lsp/src/main/java/workspace/DAPWorkspaceManager.java @@ -84,6 +84,7 @@ import workspace.events.DAPTerminateEvent; import workspace.plugins.ASTPlugin; import workspace.plugins.INPlugin; +import workspace.plugins.LSPPlugin; public class DAPWorkspaceManager { diff --git a/lsp/src/main/java/workspace/MessageHub.java b/lsp/src/main/java/workspace/MessageHub.java index 0a6ffb3bb..96e6bd48e 100644 --- a/lsp/src/main/java/workspace/MessageHub.java +++ b/lsp/src/main/java/workspace/MessageHub.java @@ -40,6 +40,7 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.plugins.AnalysisPlugin; +import workspace.plugins.LSPPlugin; /** * A singleton object to manage the current set of error and warning messages for all diff --git a/lsp/src/main/java/workspace/lenses/CodeLens.java b/lsp/src/main/java/workspace/lenses/CodeLens.java index 0f7f00230..83f68817a 100644 --- a/lsp/src/main/java/workspace/lenses/CodeLens.java +++ b/lsp/src/main/java/workspace/lenses/CodeLens.java @@ -29,7 +29,7 @@ import json.JSONObject; import lsp.Utils; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; /** * The base class for all code lenses. diff --git a/lsp/src/main/java/workspace/plugins/ASTPlugin.java b/lsp/src/main/java/workspace/plugins/ASTPlugin.java index b19688820..a15b6ff98 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPlugin.java +++ b/lsp/src/main/java/workspace/plugins/ASTPlugin.java @@ -53,7 +53,6 @@ import rpc.RPCRequest; import workspace.Diag; import workspace.EventListener; -import workspace.LSPPlugin; import workspace.events.ChangeFileEvent; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; diff --git a/lsp/src/main/java/workspace/plugins/ASTPluginPR.java b/lsp/src/main/java/workspace/plugins/ASTPluginPR.java index 06055c409..789cd7c4d 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPluginPR.java +++ b/lsp/src/main/java/workspace/plugins/ASTPluginPR.java @@ -46,7 +46,6 @@ import json.JSONArray; import lsp.textdocument.SymbolKind; import workspace.Diag; -import workspace.LSPPlugin; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; import workspace.lenses.ASTCodeLens; diff --git a/lsp/src/main/java/workspace/plugins/ASTPluginSL.java b/lsp/src/main/java/workspace/plugins/ASTPluginSL.java index cf731b5a0..1b659549e 100644 --- a/lsp/src/main/java/workspace/plugins/ASTPluginSL.java +++ b/lsp/src/main/java/workspace/plugins/ASTPluginSL.java @@ -42,7 +42,6 @@ import json.JSONArray; import lsp.textdocument.SymbolKind; -import workspace.LSPPlugin; import workspace.events.CheckPrepareEvent; import workspace.events.CheckSyntaxEvent; import workspace.lenses.ASTCodeLens; diff --git a/lsp/src/main/java/workspace/LSPPlugin.java b/lsp/src/main/java/workspace/plugins/LSPPlugin.java similarity index 99% rename from lsp/src/main/java/workspace/LSPPlugin.java rename to lsp/src/main/java/workspace/plugins/LSPPlugin.java index c8f1be8bc..c927f890b 100644 --- a/lsp/src/main/java/workspace/LSPPlugin.java +++ b/lsp/src/main/java/workspace/plugins/LSPPlugin.java @@ -22,7 +22,7 @@ * ******************************************************************************/ -package workspace; +package workspace.plugins; import java.io.BufferedReader; import java.io.File; @@ -104,6 +104,15 @@ import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; +import workspace.DAPWorkspaceManager; +import workspace.DAPXWorkspaceManager; +import workspace.Diag; +import workspace.DiagUtils; +import workspace.EventHub; +import workspace.EventListener; +import workspace.GlobFinder; +import workspace.MessageHub; +import workspace.PluginRegistry; import workspace.events.ChangeFileEvent; import workspace.events.CheckCompleteEvent; import workspace.events.CheckFailedEvent; @@ -119,14 +128,6 @@ import workspace.events.SaveFileEvent; import workspace.events.ShutdownEvent; import workspace.events.UnknownMethodEvent; -import workspace.plugins.ASTPlugin; -import workspace.plugins.AnalysisPlugin; -import workspace.plugins.CTPlugin; -import workspace.plugins.INPlugin; -import workspace.plugins.POPlugin; -import workspace.plugins.TCPlugin; -import workspace.plugins.TRPlugin; -import workspace.plugins.WSPlugin; /** * The main AnalysisPlugin that deals with LSP protocol messages. This is @@ -171,12 +172,12 @@ private LSPPlugin() if (System.getProperty("lsp.encoding") == null) { encoding = Charset.defaultCharset(); - Diag.info("Workspace created, using default encoding: %s", encoding.name()); + Diag.info("LSPPlugin created, using default encoding: %s", encoding.name()); } else { encoding = Charset.forName(System.getProperty("lsp.encoding")); - Diag.info("Workspace created, encoding set to %s", encoding.displayName()); + Diag.info("LSPPlugin created, encoding set to %s", encoding.displayName()); } } diff --git a/lsp/src/main/java/workspace/plugins/TRPlugin.java b/lsp/src/main/java/workspace/plugins/TRPlugin.java index c0a5a7c1b..add269779 100644 --- a/lsp/src/main/java/workspace/plugins/TRPlugin.java +++ b/lsp/src/main/java/workspace/plugins/TRPlugin.java @@ -42,7 +42,6 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import workspace.EventListener; -import workspace.LSPPlugin; /** * The translate plugin. diff --git a/lsp/src/test/java/lsp/DAPTest.java b/lsp/src/test/java/lsp/DAPTest.java index 3ee3b2a70..803a2c17e 100644 --- a/lsp/src/test/java/lsp/DAPTest.java +++ b/lsp/src/test/java/lsp/DAPTest.java @@ -40,7 +40,7 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; abstract public class DAPTest { diff --git a/lsp/src/test/java/lsp/LSPTest.java b/lsp/src/test/java/lsp/LSPTest.java index 2c19a242d..45b321b22 100644 --- a/lsp/src/test/java/lsp/LSPTest.java +++ b/lsp/src/test/java/lsp/LSPTest.java @@ -40,7 +40,7 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; abstract public class LSPTest { diff --git a/quickcheck/src/test/java/tests/LSPTest.java b/quickcheck/src/test/java/tests/LSPTest.java index e010eb4f1..3728a27d5 100644 --- a/quickcheck/src/test/java/tests/LSPTest.java +++ b/quickcheck/src/test/java/tests/LSPTest.java @@ -40,7 +40,7 @@ import workspace.DAPWorkspaceManager; import workspace.DAPXWorkspaceManager; import workspace.Diag; -import workspace.LSPPlugin; +import workspace.plugins.LSPPlugin; abstract public class LSPTest { From cb3c42ed6fade1216fb60f5f4b10419de8084261 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Tue, 23 Apr 2024 16:11:20 +0100 Subject: [PATCH 3/8] Renamed DAPPlugin and removed DAPX --- .../v2c/src/test/java/plugins/LSPTest.java | 8 +- lsp/src/main/java/dap/AsyncExecutor.java | 4 +- lsp/src/main/java/dap/DAPServer.java | 4 +- lsp/src/main/java/dap/UnknownHandler.java | 4 +- .../java/dap/handlers/DebuggingHandler.java | 4 +- .../java/dap/handlers/DisconnectHandler.java | 4 +- .../java/dap/handlers/EvaluateHandler.java | 4 +- .../java/dap/handlers/InitializeHandler.java | 6 +- .../main/java/dap/handlers/LaunchHandler.java | 4 +- .../main/java/dap/handlers/PauseHandler.java | 4 +- .../dap/handlers/SetBreakpointsHandler.java | 12 +-- .../java/dap/handlers/StackTraceHandler.java | 4 +- .../java/dap/handlers/TerminateHandler.java | 4 +- .../java/dap/handlers/ThreadsHandler.java | 4 +- lsp/src/main/java/lsp/InitializeHandler.java | 4 +- lsp/src/main/java/lsp/UnknownHandler.java | 2 +- lsp/src/main/java/vdmj/DAPDebugLink.java | 6 +- lsp/src/main/java/vdmj/DAPDebugReader.java | 8 +- .../java/vdmj/commands/GenerateCommand.java | 4 +- .../main/java/vdmj/commands/InitCommand.java | 4 +- .../main/java/vdmj/commands/PrintCommand.java | 4 +- .../main/java/vdmj/commands/QuitCommand.java | 4 +- .../java/vdmj/commands/RuntraceCommand.java | 4 +- .../java/workspace/DAPXWorkspaceManager.java | 77 ---------------- .../main/java/workspace/EventListener.java | 4 +- .../workspace/plugins/AnalysisPlugin.java | 7 +- .../main/java/workspace/plugins/CTPlugin.java | 15 ++-- .../DAPPlugin.java} | 90 +++++++++++++++---- .../java/workspace/plugins/LSPPlugin.java | 65 +++++--------- .../main/java/workspace/plugins/POPlugin.java | 2 +- .../main/java/workspace/plugins/TRPlugin.java | 4 +- lsp/src/test/java/lsp/DAPTest.java | 9 +- lsp/src/test/java/lsp/LSPTest.java | 9 +- .../plugin/QuickCheckLSPPlugin.java | 4 +- quickcheck/src/test/java/tests/LSPTest.java | 9 +- 35 files changed, 182 insertions(+), 223 deletions(-) delete mode 100644 lsp/src/main/java/workspace/DAPXWorkspaceManager.java rename lsp/src/main/java/workspace/{DAPWorkspaceManager.java => plugins/DAPPlugin.java} (91%) diff --git a/examples/v2c/src/test/java/plugins/LSPTest.java b/examples/v2c/src/test/java/plugins/LSPTest.java index 208221ef2..1552081ef 100644 --- a/examples/v2c/src/test/java/plugins/LSPTest.java +++ b/examples/v2c/src/test/java/plugins/LSPTest.java @@ -36,14 +36,14 @@ import json.JSONWriter; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; import workspace.plugins.LSPPlugin; abstract public class LSPTest { protected LSPPlugin lspManager = null; - protected DAPWorkspaceManager dapManager = null; + protected DAPPlugin dapManager = null; static { @@ -54,9 +54,9 @@ protected void setupWorkspace(Dialect dialect) throws IOException { Settings.dialect = dialect; LSPPlugin.reset(); - DAPWorkspaceManager.reset(); + DAPPlugin.reset(); lspManager = LSPPlugin.getInstance(); - dapManager = DAPWorkspaceManager.getInstance(); + dapManager = DAPPlugin.getInstance(); } protected RPCMessageList initialize(File root, JSONObject capabilities) throws Exception diff --git a/lsp/src/main/java/dap/AsyncExecutor.java b/lsp/src/main/java/dap/AsyncExecutor.java index 4d51014df..a46c00f29 100644 --- a/lsp/src/main/java/dap/AsyncExecutor.java +++ b/lsp/src/main/java/dap/AsyncExecutor.java @@ -30,13 +30,13 @@ import lsp.CancellableThread; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public abstract class AsyncExecutor extends CancellableThread { protected final DAPServer server = DAPServer.getInstance(); - protected final DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + protected final DAPPlugin manager = DAPPlugin.getInstance(); protected final DAPRequest request; public AsyncExecutor(String id, DAPRequest request) diff --git a/lsp/src/main/java/dap/DAPServer.java b/lsp/src/main/java/dap/DAPServer.java index e48fcf37e..a882ed983 100644 --- a/lsp/src/main/java/dap/DAPServer.java +++ b/lsp/src/main/java/dap/DAPServer.java @@ -45,8 +45,8 @@ import dap.handlers.ThreadsHandler; import json.JSONObject; import json.JSONServer; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class DAPServer extends JSONServer { @@ -61,7 +61,7 @@ public DAPServer(Dialect dialect, Socket socket) throws IOException INSTANCE = this; this.dispatcher = getDispatcher(); - DAPWorkspaceManager.getInstance(); // Just set up + DAPPlugin.getInstance(); // Just set up } public static DAPServer getInstance() diff --git a/lsp/src/main/java/dap/UnknownHandler.java b/lsp/src/main/java/dap/UnknownHandler.java index 6a44e766e..498c5548a 100644 --- a/lsp/src/main/java/dap/UnknownHandler.java +++ b/lsp/src/main/java/dap/UnknownHandler.java @@ -27,7 +27,7 @@ import java.io.IOException; -import workspace.DAPXWorkspaceManager; +import workspace.plugins.DAPPlugin; public class UnknownHandler extends DAPHandler { @@ -39,7 +39,7 @@ public UnknownHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPXWorkspaceManager manager = DAPXWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); return manager.unhandledCommand(request); } } diff --git a/lsp/src/main/java/dap/handlers/DebuggingHandler.java b/lsp/src/main/java/dap/handlers/DebuggingHandler.java index fd103c9f2..ea61a8da1 100644 --- a/lsp/src/main/java/dap/handlers/DebuggingHandler.java +++ b/lsp/src/main/java/dap/handlers/DebuggingHandler.java @@ -30,8 +30,8 @@ import dap.DAPMessageList; import dap.DAPRequest; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class DebuggingHandler extends DAPHandler { @@ -43,7 +43,7 @@ public DebuggingHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) diff --git a/lsp/src/main/java/dap/handlers/DisconnectHandler.java b/lsp/src/main/java/dap/handlers/DisconnectHandler.java index 6da6a59c9..123b4717d 100644 --- a/lsp/src/main/java/dap/handlers/DisconnectHandler.java +++ b/lsp/src/main/java/dap/handlers/DisconnectHandler.java @@ -34,7 +34,7 @@ import lsp.CancellableThread; import lsp.Utils; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class DisconnectHandler extends DAPHandler { @@ -46,7 +46,7 @@ public DisconnectHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null) diff --git a/lsp/src/main/java/dap/handlers/EvaluateHandler.java b/lsp/src/main/java/dap/handlers/EvaluateHandler.java index e8f00305c..b90c689f7 100644 --- a/lsp/src/main/java/dap/handlers/EvaluateHandler.java +++ b/lsp/src/main/java/dap/handlers/EvaluateHandler.java @@ -31,7 +31,7 @@ import dap.DAPRequest; import json.JSONObject; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class EvaluateHandler extends DAPHandler { @@ -43,7 +43,7 @@ public EvaluateHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) diff --git a/lsp/src/main/java/dap/handlers/InitializeHandler.java b/lsp/src/main/java/dap/handlers/InitializeHandler.java index 5eeb4a1ec..a4557ed72 100644 --- a/lsp/src/main/java/dap/handlers/InitializeHandler.java +++ b/lsp/src/main/java/dap/handlers/InitializeHandler.java @@ -30,8 +30,8 @@ import dap.DAPMessageList; import dap.DAPRequest; import json.JSONObject; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class InitializeHandler extends DAPHandler { @@ -60,7 +60,7 @@ private DAPMessageList initialize(DAPRequest request) try { JSONObject arguments = request.get("arguments"); - return DAPWorkspaceManager.getInstance().dapInitialize(request, arguments); + return DAPPlugin.getInstance().dapInitialize(request, arguments); } catch (Exception e) { @@ -73,7 +73,7 @@ private DAPMessageList configurationDone(DAPRequest request) { try { - return DAPWorkspaceManager.getInstance().dapConfigurationDone(request); + return DAPPlugin.getInstance().dapConfigurationDone(request); } catch (Exception e) { diff --git a/lsp/src/main/java/dap/handlers/LaunchHandler.java b/lsp/src/main/java/dap/handlers/LaunchHandler.java index e3720384c..79968629b 100644 --- a/lsp/src/main/java/dap/handlers/LaunchHandler.java +++ b/lsp/src/main/java/dap/handlers/LaunchHandler.java @@ -29,7 +29,7 @@ import dap.DAPMessageList; import dap.DAPRequest; import json.JSONObject; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class LaunchHandler extends DAPHandler { @@ -50,7 +50,7 @@ public DAPMessageList run(DAPRequest request) throws IOException String remoteControl = arguments.get("remoteControl"); String logging = arguments.get("logging"); - return DAPWorkspaceManager.getInstance().dapLaunch( + return DAPPlugin.getInstance().dapLaunch( request, noDebug, defaultName, command, remoteControl, logging); } catch (Exception e) diff --git a/lsp/src/main/java/dap/handlers/PauseHandler.java b/lsp/src/main/java/dap/handlers/PauseHandler.java index 12a5e8ee5..d53ee91cd 100644 --- a/lsp/src/main/java/dap/handlers/PauseHandler.java +++ b/lsp/src/main/java/dap/handlers/PauseHandler.java @@ -31,8 +31,8 @@ import dap.DAPMessageList; import dap.DAPRequest; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class PauseHandler extends DAPHandler { @@ -44,7 +44,7 @@ public PauseHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null) diff --git a/lsp/src/main/java/dap/handlers/SetBreakpointsHandler.java b/lsp/src/main/java/dap/handlers/SetBreakpointsHandler.java index e6a330c77..0f7beace4 100644 --- a/lsp/src/main/java/dap/handlers/SetBreakpointsHandler.java +++ b/lsp/src/main/java/dap/handlers/SetBreakpointsHandler.java @@ -34,7 +34,7 @@ import json.JSONObject; import lsp.Utils; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class SetBreakpointsHandler extends DAPHandler { @@ -67,7 +67,7 @@ private DAPMessageList setBreakpoints(DAPRequest request) throws IOException { try { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) @@ -82,7 +82,7 @@ private DAPMessageList setBreakpoints(DAPRequest request) throws IOException File file = Utils.pathToFile(source.get("path")); JSONArray breakpoints = arguments.get("breakpoints"); - return DAPWorkspaceManager.getInstance().dapSetBreakpoints(request, file, breakpoints); + return DAPPlugin.getInstance().dapSetBreakpoints(request, file, breakpoints); } } catch (Exception e) @@ -95,7 +95,7 @@ private DAPMessageList setFunctionBreakpoints(DAPRequest request) throws IOExcep { try { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) @@ -108,7 +108,7 @@ private DAPMessageList setFunctionBreakpoints(DAPRequest request) throws IOExcep JSONObject arguments = request.get("arguments"); JSONArray breakpoints = arguments.get("breakpoints"); - return DAPWorkspaceManager.getInstance().dapSetFunctionBreakpoints(request, breakpoints); + return DAPPlugin.getInstance().dapSetFunctionBreakpoints(request, breakpoints); } } catch (Exception e) @@ -121,7 +121,7 @@ private DAPMessageList setExceptionBreakpoints(DAPRequest request) throws IOExce { try { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) diff --git a/lsp/src/main/java/dap/handlers/StackTraceHandler.java b/lsp/src/main/java/dap/handlers/StackTraceHandler.java index 26d910072..1dc192b77 100644 --- a/lsp/src/main/java/dap/handlers/StackTraceHandler.java +++ b/lsp/src/main/java/dap/handlers/StackTraceHandler.java @@ -32,7 +32,7 @@ import json.JSONArray; import json.JSONObject; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class StackTraceHandler extends DAPHandler { @@ -44,7 +44,7 @@ public StackTraceHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) diff --git a/lsp/src/main/java/dap/handlers/TerminateHandler.java b/lsp/src/main/java/dap/handlers/TerminateHandler.java index 9aaf6ae72..fdab03cc2 100644 --- a/lsp/src/main/java/dap/handlers/TerminateHandler.java +++ b/lsp/src/main/java/dap/handlers/TerminateHandler.java @@ -32,7 +32,7 @@ import json.JSONObject; import lsp.CancellableThread; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class TerminateHandler extends DAPHandler { @@ -44,7 +44,7 @@ public TerminateHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null) diff --git a/lsp/src/main/java/dap/handlers/ThreadsHandler.java b/lsp/src/main/java/dap/handlers/ThreadsHandler.java index 6ce5607b7..ff1afa616 100644 --- a/lsp/src/main/java/dap/handlers/ThreadsHandler.java +++ b/lsp/src/main/java/dap/handlers/ThreadsHandler.java @@ -35,8 +35,8 @@ import json.JSONArray; import json.JSONObject; import vdmj.DAPDebugReader; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class ThreadsHandler extends DAPHandler { @@ -48,7 +48,7 @@ public ThreadsHandler() @Override public DAPMessageList run(DAPRequest request) throws IOException { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); DAPDebugReader debugReader = manager.getDebugReader(); if (debugReader != null && debugReader.isListening()) diff --git a/lsp/src/main/java/lsp/InitializeHandler.java b/lsp/src/main/java/lsp/InitializeHandler.java index 675c639b7..b0bde6de4 100644 --- a/lsp/src/main/java/lsp/InitializeHandler.java +++ b/lsp/src/main/java/lsp/InitializeHandler.java @@ -74,7 +74,7 @@ private RPCMessageList initialize(RPCRequest request) Diag.config("Assuming rootUri = %s", rootUri); } - LSPPlugin lsp = registry.getPlugin("LSP"); + LSPPlugin lsp = LSPPlugin.getInstance(); return lsp.lspInitialize(request, clientInfo, rootUri, clientCapabilities); } catch (URISyntaxException e) @@ -92,7 +92,7 @@ private RPCMessageList initialize(RPCRequest request) private RPCMessageList initialized(RPCRequest request) { LSPServer.getInstance().setInitialized(true); - LSPPlugin lsp = registry.getPlugin("LSP"); + LSPPlugin lsp = LSPPlugin.getInstance(); return lsp.lspInitialized(request); } diff --git a/lsp/src/main/java/lsp/UnknownHandler.java b/lsp/src/main/java/lsp/UnknownHandler.java index 95105cf7d..0aa3b623f 100644 --- a/lsp/src/main/java/lsp/UnknownHandler.java +++ b/lsp/src/main/java/lsp/UnknownHandler.java @@ -38,7 +38,7 @@ public UnknownHandler() @Override public RPCMessageList request(RPCRequest request) { - LSPPlugin manager = registry.getPlugin("LSP"); + LSPPlugin manager = LSPPlugin.getInstance(); return manager.unhandledMethod(request); } } diff --git a/lsp/src/main/java/vdmj/DAPDebugLink.java b/lsp/src/main/java/vdmj/DAPDebugLink.java index 1964806c6..2ff2c229b 100644 --- a/lsp/src/main/java/vdmj/DAPDebugLink.java +++ b/lsp/src/main/java/vdmj/DAPDebugLink.java @@ -44,8 +44,8 @@ import dap.DAPResponse; import dap.DAPServer; import json.JSONObject; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; public class DAPDebugLink extends ConsoleDebugLink { @@ -103,7 +103,7 @@ public void newThread(CPUValue cpu) return; // Too late! } - if (DAPWorkspaceManager.getInstance().getNoDebug()) + if (DAPPlugin.getInstance().getNoDebug()) { return; // No one cares } @@ -238,7 +238,7 @@ public void complete(DebugReason reason, ContextException exception) return; // Too late! } - if (DAPWorkspaceManager.getInstance().getNoDebug()) + if (DAPPlugin.getInstance().getNoDebug()) { return; // No one cares } diff --git a/lsp/src/main/java/vdmj/DAPDebugReader.java b/lsp/src/main/java/vdmj/DAPDebugReader.java index b76f74853..312ecc088 100644 --- a/lsp/src/main/java/vdmj/DAPDebugReader.java +++ b/lsp/src/main/java/vdmj/DAPDebugReader.java @@ -46,8 +46,8 @@ import json.JSONArray; import json.JSONObject; import lsp.Utils; -import workspace.DAPWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; /** * A class to listen for and interact with multiple threads that are being debugged. @@ -147,7 +147,7 @@ private boolean doCommand() throws Exception JSONObject source = arguments.get("source"); File file = Utils.pathToFile(source.get("path")); JSONArray lines = arguments.get("breakpoints"); - DAPMessageList responses = DAPWorkspaceManager.getInstance().dapSetBreakpoints(dapRequest, file, lines); + DAPMessageList responses = DAPPlugin.getInstance().dapSetBreakpoints(dapRequest, file, lines); for (JSONObject response: responses) { @@ -162,7 +162,7 @@ private boolean doCommand() throws Exception { JSONObject arguments = dapRequest.get("arguments"); JSONArray names = arguments.get("breakpoints"); - DAPMessageList responses = DAPWorkspaceManager.getInstance().dapSetFunctionBreakpoints(dapRequest, names); + DAPMessageList responses = DAPPlugin.getInstance().dapSetFunctionBreakpoints(dapRequest, names); for (JSONObject response: responses) { @@ -177,7 +177,7 @@ private boolean doCommand() throws Exception { JSONObject arguments = dapRequest.get("arguments"); JSONArray filterOptions = arguments.get("filterOptions"); - DAPMessageList responses = DAPWorkspaceManager.getInstance().dapSetExceptionBreakpoints(dapRequest, filterOptions); + DAPMessageList responses = DAPPlugin.getInstance().dapSetExceptionBreakpoints(dapRequest, filterOptions); for (JSONObject response: responses) { diff --git a/lsp/src/main/java/vdmj/commands/GenerateCommand.java b/lsp/src/main/java/vdmj/commands/GenerateCommand.java index 900bce807..35da5994f 100644 --- a/lsp/src/main/java/vdmj/commands/GenerateCommand.java +++ b/lsp/src/main/java/vdmj/commands/GenerateCommand.java @@ -33,9 +33,9 @@ import dap.GenerateExecutor; import lsp.LSPException; import lsp.Utils; -import workspace.DAPWorkspaceManager; import workspace.Diag; import workspace.PluginRegistry; +import workspace.plugins.DAPPlugin; import workspace.plugins.INPlugin; public class GenerateCommand extends AnalysisCommand @@ -69,7 +69,7 @@ public DAPMessageList run(DAPRequest request) return new DAPMessageList(request, false, "Specification has changed: try restart", null); } - Interpreter interpreter = DAPWorkspaceManager.getInstance().getInterpreter(); + Interpreter interpreter = DAPPlugin.getInstance().getInterpreter(); interpreter.init(); TCNameToken qname = null; diff --git a/lsp/src/main/java/vdmj/commands/InitCommand.java b/lsp/src/main/java/vdmj/commands/InitCommand.java index 358c14f49..1b54e7108 100644 --- a/lsp/src/main/java/vdmj/commands/InitCommand.java +++ b/lsp/src/main/java/vdmj/commands/InitCommand.java @@ -33,7 +33,7 @@ import dap.DAPResponse; import dap.InitExecutor; import json.JSONObject; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class InitCommand extends AnalysisCommand implements ScriptRunnable { @@ -92,7 +92,7 @@ public boolean notWhenRunning() public String scriptRun(DAPRequest request) throws IOException { LexLocation.clearLocations(); - DAPWorkspaceManager.getInstance().getInterpreter().init(); + DAPPlugin.getInstance().getInterpreter().init(); return "()\nGlobal context initialized\nCleared all coverage information"; } } diff --git a/lsp/src/main/java/vdmj/commands/PrintCommand.java b/lsp/src/main/java/vdmj/commands/PrintCommand.java index 09abe77c9..f1636c646 100644 --- a/lsp/src/main/java/vdmj/commands/PrintCommand.java +++ b/lsp/src/main/java/vdmj/commands/PrintCommand.java @@ -29,7 +29,7 @@ import dap.DAPMessageList; import dap.DAPRequest; import dap.ExpressionExecutor; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class PrintCommand extends AnalysisCommand implements InitRunnable, ScriptRunnable { @@ -66,7 +66,7 @@ public String initRun(DAPRequest request) { try { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); return manager.getInterpreter().execute(expression).toString(); } catch (Exception e) diff --git a/lsp/src/main/java/vdmj/commands/QuitCommand.java b/lsp/src/main/java/vdmj/commands/QuitCommand.java index 4731739c2..9bcdf60f6 100644 --- a/lsp/src/main/java/vdmj/commands/QuitCommand.java +++ b/lsp/src/main/java/vdmj/commands/QuitCommand.java @@ -28,7 +28,7 @@ import dap.DAPRequest; import dap.DAPServer; import lsp.CancellableThread; -import workspace.DAPWorkspaceManager; +import workspace.plugins.DAPPlugin; public class QuitCommand extends AnalysisCommand { @@ -48,7 +48,7 @@ public QuitCommand(String line) @Override public DAPMessageList run(DAPRequest request) { - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); if (CancellableThread.currentlyRunning() != null) { diff --git a/lsp/src/main/java/vdmj/commands/RuntraceCommand.java b/lsp/src/main/java/vdmj/commands/RuntraceCommand.java index e078fff81..839bc553b 100644 --- a/lsp/src/main/java/vdmj/commands/RuntraceCommand.java +++ b/lsp/src/main/java/vdmj/commands/RuntraceCommand.java @@ -30,10 +30,10 @@ import json.JSONObject; import lsp.LSPException; import lsp.Utils; -import workspace.DAPWorkspaceManager; import workspace.Diag; import workspace.PluginRegistry; import workspace.plugins.CTPlugin; +import workspace.plugins.DAPPlugin; public class RuntraceCommand extends AnalysisCommand implements InitRunnable { @@ -69,7 +69,7 @@ public String initRun(DAPRequest request) { try { - DAPWorkspaceManager dapManager = DAPWorkspaceManager.getInstance(); + DAPPlugin dapManager = DAPPlugin.getInstance(); CTPlugin ct = PluginRegistry.getInstance().getPlugin("CT"); if (ct.isRunning()) diff --git a/lsp/src/main/java/workspace/DAPXWorkspaceManager.java b/lsp/src/main/java/workspace/DAPXWorkspaceManager.java deleted file mode 100644 index d6af41f95..000000000 --- a/lsp/src/main/java/workspace/DAPXWorkspaceManager.java +++ /dev/null @@ -1,77 +0,0 @@ -/******************************************************************************* - * - * Copyright (c) 2022 Nick Battle. - * - * Author: Nick Battle - * - * This file is part of VDMJ. - * - * VDMJ is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * VDMJ is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with VDMJ. If not, see . - * SPDX-License-Identifier: GPL-3.0-or-later - * - ******************************************************************************/ - -package workspace; - -import dap.DAPMessageList; -import dap.DAPRequest; -import workspace.events.UnknownCommandEvent; - -public class DAPXWorkspaceManager -{ - private static DAPXWorkspaceManager INSTANCE = null; - private final EventHub eventhub; - - protected DAPXWorkspaceManager() - { - this.eventhub = EventHub.getInstance(); - Diag.info("Created DAPXWorkspaceManager"); - } - - public static synchronized DAPXWorkspaceManager getInstance() - { - if (INSTANCE == null) - { - INSTANCE = new DAPXWorkspaceManager(); - } - - return INSTANCE; - } - - /** - * This is only used by unit testing. - */ - public static void reset() - { - if (INSTANCE != null) - { - INSTANCE = null; - } - } - - public DAPMessageList unhandledCommand(DAPRequest request) - { - DAPMessageList responses = eventhub.publish(new UnknownCommandEvent(request)); - - if (responses.isEmpty()) - { - Diag.error("No external plugin registered for unknownMethodEvent (%s)", request.getCommand()); - return new DAPMessageList(request, false, "Unknown DAP command: " + request.getCommand(), null); - } - else - { - return responses; - } - } -} diff --git a/lsp/src/main/java/workspace/EventListener.java b/lsp/src/main/java/workspace/EventListener.java index 4cebff874..330ea344f 100644 --- a/lsp/src/main/java/workspace/EventListener.java +++ b/lsp/src/main/java/workspace/EventListener.java @@ -34,7 +34,9 @@ */ public interface EventListener { - public final static int LSP_PRIORITY = Integer.getInteger("lspx.plugins.priority.lsp", 0); + public final static int LSP_PRIORITY = Integer.getInteger("lspx.plugins.priority.lsp", 0); + public final static int DAP_PRIORITY = Integer.getInteger("lspx.plugins.priority.dap", 0); + public final static int WS_PRIORITY = Integer.getInteger("lspx.plugins.priority.ws", 100); public final static int AST_PRIORITY = Integer.getInteger("lspx.plugins.priority.ast", 200); public final static int TC_PRIORITY = Integer.getInteger("lspx.plugins.priority.tc", 300); diff --git a/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java b/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java index 00dd6758d..074da741c 100644 --- a/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java +++ b/lsp/src/main/java/workspace/plugins/AnalysisPlugin.java @@ -26,6 +26,7 @@ import com.fujitsu.vdmj.plugins.HelpList; +import dap.DAPDispatcher; import dap.DAPMessageList; import json.JSONObject; import lsp.LSPMessageUtils; @@ -42,7 +43,8 @@ abstract public class AnalysisPlugin { - protected final RPCDispatcher dispatcher; + protected final RPCDispatcher lspDispatcher; + protected final DAPDispatcher dapDispatcher; protected final LSPMessageUtils messages; protected final PluginRegistry registry; protected final EventHub eventhub; @@ -50,7 +52,8 @@ abstract public class AnalysisPlugin public AnalysisPlugin() { - dispatcher = RPCDispatcher.getInstance(); + lspDispatcher = RPCDispatcher.getInstance(); + dapDispatcher = DAPDispatcher.getInstance(); messages = new LSPMessageUtils(); registry = PluginRegistry.getInstance(); eventhub = EventHub.getInstance(); diff --git a/lsp/src/main/java/workspace/plugins/CTPlugin.java b/lsp/src/main/java/workspace/plugins/CTPlugin.java index 7b2d79031..f58b2a614 100644 --- a/lsp/src/main/java/workspace/plugins/CTPlugin.java +++ b/lsp/src/main/java/workspace/plugins/CTPlugin.java @@ -58,7 +58,6 @@ import rpc.RPCRequest; import rpc.RPCResponse; import vdmj.commands.GenerateCommand; -import workspace.DAPWorkspaceManager; import workspace.Diag; import workspace.EventListener; import workspace.events.CheckCompleteEvent; @@ -119,7 +118,7 @@ public int getPriority() @Override public void init() { - dispatcher.register(new CTHandler(), "slsp/CT/traces", "slsp/CT/generate", "slsp/CT/execute"); + lspDispatcher.register(new CTHandler(), "slsp/CT/traces", "slsp/CT/generate", "slsp/CT/execute"); eventhub.register(CheckPrepareEvent.class, this); eventhub.register(CheckCompleteEvent.class, this); @@ -216,7 +215,7 @@ public RPCMessageList ctTraces(RPCRequest request, File project) return new RPCMessageList(request, RPCErrors.ParseError, "Specification has errors"); } - DAPWorkspaceManager.getInstance().refreshInterpreter(); + DAPPlugin.getInstance().refreshInterpreter(); CTPlugin ct = registry.getPlugin("CT"); Map nameMap = ct.getTraceNames(); JSONArray results = new JSONArray(); @@ -260,7 +259,7 @@ public RPCMessageList ctGenerate(RPCRequest request, String name) return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); } - DAPWorkspaceManager.getInstance().refreshInterpreter(); + DAPPlugin.getInstance().refreshInterpreter(); TCNameToken tracename = Utils.stringToName(name); int count = ct.generate(tracename); return new RPCMessageList(request, new JSONObject("numberOfTests", count)); @@ -296,7 +295,7 @@ public RPCMessageList ctExecute(RPCRequest request, String name, return new RPCMessageList(request, RPCErrors.InvalidRequest, "Trace still running"); } - if (DAPWorkspaceManager.getInstance().refreshInterpreter()) + if (DAPPlugin.getInstance().refreshInterpreter()) { Diag.error("The spec has changed since generate, so re-generating"); ct.generate(tracename); @@ -328,7 +327,7 @@ public RPCMessageList ctExecute(RPCRequest request, String name, public int generate(TCNameToken tracename) throws LSPException { - Interpreter interpreter = DAPWorkspaceManager.getInstance().getInterpreter(); + Interpreter interpreter = DAPPlugin.getInstance().getInterpreter(); interpreter.init(); INNamedTraceDefinition tracedef = interpreter.findTraceDefinition(tracename); @@ -438,7 +437,7 @@ public JSONObject runOneTrace(TCNameToken tracename, long testNumber) throws LSP CallSequence test = traceIterator.getNextTest(); String callString = test.getCallString(traceContext); - Interpreter interpreter = DAPWorkspaceManager.getInstance().getInterpreter(); + Interpreter interpreter = DAPPlugin.getInstance().getInterpreter(); // interpreter.init(); Not needed as we run from InitExecutor only List result = interpreter.runOneTrace(traceClassDef, test, true); @@ -590,7 +589,7 @@ private void send(LSPServer server, JSONObject response) throws IOException private JSONArray runBatch(int batchSize, long endTest) throws Exception { - Interpreter interpreter = DAPWorkspaceManager.getInstance().getInterpreter(); + Interpreter interpreter = DAPPlugin.getInstance().getInterpreter(); JSONArray array = new JSONArray(); Diag.fine("Starting batch at test number %d...", testNumber); diff --git a/lsp/src/main/java/workspace/DAPWorkspaceManager.java b/lsp/src/main/java/workspace/plugins/DAPPlugin.java similarity index 91% rename from lsp/src/main/java/workspace/DAPWorkspaceManager.java rename to lsp/src/main/java/workspace/plugins/DAPPlugin.java index 2b0296300..35a516fc2 100644 --- a/lsp/src/main/java/workspace/DAPWorkspaceManager.java +++ b/lsp/src/main/java/workspace/plugins/DAPPlugin.java @@ -22,7 +22,7 @@ * ******************************************************************************/ -package workspace; +package workspace.plugins; import java.io.File; import java.io.IOException; @@ -69,12 +69,27 @@ import dap.DAPServer; import dap.InitExecutor; import dap.RemoteControlExecutor; +import dap.UnknownHandler; +import dap.handlers.DebuggingHandler; +import dap.handlers.DisconnectHandler; +import dap.handlers.EvaluateHandler; +import dap.handlers.InitializeHandler; +import dap.handlers.LaunchHandler; +import dap.handlers.PauseHandler; +import dap.handlers.SetBreakpointsHandler; +import dap.handlers.SourceHandler; +import dap.handlers.StackTraceHandler; +import dap.handlers.TerminateHandler; +import dap.handlers.ThreadsHandler; import json.JSONArray; import json.JSONObject; import lsp.CancellableThread; import lsp.Utils; import vdmj.DAPDebugReader; import vdmj.commands.AnalysisCommand; +import workspace.Diag; +import workspace.EventListener; +import workspace.PluginRegistry; import workspace.events.DAPBeforeEvaluateEvent; import workspace.events.DAPConfigDoneEvent; import workspace.events.DAPDisconnectEvent; @@ -82,16 +97,11 @@ import workspace.events.DAPInitializeEvent; import workspace.events.DAPLaunchEvent; import workspace.events.DAPTerminateEvent; -import workspace.plugins.ASTPlugin; -import workspace.plugins.INPlugin; -import workspace.plugins.LSPPlugin; +import workspace.events.UnknownCommandEvent; -public class DAPWorkspaceManager +public class DAPPlugin extends AnalysisPlugin { - private static DAPWorkspaceManager INSTANCE = null; - private final PluginRegistry registry; - private final EventHub eventhub; - private final MessageHub messagehub; + private static DAPPlugin INSTANCE = null; private JSONObject clientCapabilities; private Boolean noDebug; @@ -119,24 +129,57 @@ public class DAPWorkspaceManager "vdmj.in.typebind_limit" ); - protected DAPWorkspaceManager() + protected DAPPlugin() { - this.registry = PluginRegistry.getInstance(); - this.eventhub = EventHub.getInstance(); - this.messagehub = MessageHub.getInstance(); - Diag.info("Created DAPWorkspaceManager"); + Diag.info("DAPPlugin created"); + } + + @Override + public int getPriority() + { + return EventListener.DAP_PRIORITY; + } + + @Override + public String getName() + { + return "DAP"; } - public static synchronized DAPWorkspaceManager getInstance() + public static synchronized DAPPlugin getInstance() { if (INSTANCE == null) { - INSTANCE = new DAPWorkspaceManager(); + INSTANCE = new DAPPlugin(); + + PluginRegistry registry = PluginRegistry.getInstance(); + registry.registerPlugin(INSTANCE); } return INSTANCE; } + @Override + public void init() + { + dapDispatcher.register(new InitializeHandler(), "initialize"); + dapDispatcher.register(new LaunchHandler(), "launch"); + dapDispatcher.register(new InitializeHandler(), "configurationDone"); + dapDispatcher.register(new ThreadsHandler(), "threads"); + dapDispatcher.register(new SetBreakpointsHandler(), "setBreakpoints", "setExceptionBreakpoints", "setFunctionBreakpoints"); + dapDispatcher.register(new EvaluateHandler(), "evaluate"); + dapDispatcher.register(new StackTraceHandler(), "stackTrace"); + dapDispatcher.register(new DisconnectHandler(), "disconnect"); + dapDispatcher.register(new TerminateHandler(), "terminate"); + dapDispatcher.register(new PauseHandler(), "pause"); + dapDispatcher.register(new SourceHandler(), "source"); + + dapDispatcher.register(new DebuggingHandler(), + "continue", "stepIn", "stepOut", "next", "scopes", "variables"); + + dapDispatcher.register(new UnknownHandler()); + } + /** * This is only used by unit testing. */ @@ -368,6 +411,21 @@ public T getClientCapability(String dotName) } } + public DAPMessageList unhandledCommand(DAPRequest request) + { + DAPMessageList responses = eventhub.publish(new UnknownCommandEvent(request)); + + if (responses.isEmpty()) + { + Diag.error("No external plugin registered for unknownMethodEvent (%s)", request.getCommand()); + return new DAPMessageList(request, false, "Unknown DAP command: " + request.getCommand(), null); + } + else + { + return responses; + } + } + /** * The interpreter has changed if there is an interpreter, and the IN tree * within that interpreter is not the same as the IN plugin's tree. diff --git a/lsp/src/main/java/workspace/plugins/LSPPlugin.java b/lsp/src/main/java/workspace/plugins/LSPPlugin.java index c927f890b..0bbd47649 100644 --- a/lsp/src/main/java/workspace/plugins/LSPPlugin.java +++ b/lsp/src/main/java/workspace/plugins/LSPPlugin.java @@ -80,7 +80,6 @@ import lsp.ExitHandler; import lsp.InitializeHandler; import lsp.LSPInitializeResponse; -import lsp.LSPMessageUtils; import lsp.LSPServer; import lsp.SetTraceNotificationHandler; import lsp.ShutdownHandler; @@ -100,12 +99,9 @@ import lsp.textdocument.TypeHierarchyHandler; import lsp.textdocument.WatchKind; import lsp.workspace.DidChangeWSHandler; -import rpc.RPCDispatcher; import rpc.RPCErrors; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.DAPWorkspaceManager; -import workspace.DAPXWorkspaceManager; import workspace.Diag; import workspace.DiagUtils; import workspace.EventHub; @@ -136,10 +132,6 @@ public class LSPPlugin extends AnalysisPlugin { private static LSPPlugin INSTANCE = null; - private PluginRegistry registry; - private EventHub eventhub; - private MessageHub messagehub; - private final LSPMessageUtils msgutils; private final Charset encoding; private JSONObject clientInfo; @@ -164,11 +156,6 @@ public class LSPPlugin extends AnalysisPlugin private LSPPlugin() { - registry = PluginRegistry.getInstance(); - eventhub = EventHub.getInstance(); - messagehub = MessageHub.getInstance(); - msgutils = new LSPMessageUtils(); - if (System.getProperty("lsp.encoding") == null) { encoding = Charset.defaultCharset(); @@ -200,8 +187,8 @@ public static synchronized LSPPlugin getInstance() INSTANCE = new LSPPlugin(); /** - * Register the built-in plugins. Others are registered in LSPXWorkspaceManager, - * when the client capabilities have been received. + * Register the built-in plugins. Others are registered when the client capabilities + * have been received. */ PluginRegistry registry = PluginRegistry.getInstance(); @@ -221,36 +208,33 @@ public static synchronized LSPPlugin getInstance() @Override public void init() { - RPCDispatcher dispatcher = RPCDispatcher.getInstance(); - - dispatcher.register(new InitializeHandler(), "initialize", "initialized", "client/registerCapability"); - dispatcher.register(new ShutdownHandler(), "shutdown"); - dispatcher.register(new ExitHandler(), "exit"); - dispatcher.register(new CancelHandler(), "$/cancelRequest"); - dispatcher.register(new SetTraceNotificationHandler(), "$/setTraceNotification", "$/setTrace"); + lspDispatcher.register(new InitializeHandler(), "initialize", "initialized", "client/registerCapability"); + lspDispatcher.register(new ShutdownHandler(), "shutdown"); + lspDispatcher.register(new ExitHandler(), "exit"); + lspDispatcher.register(new CancelHandler(), "$/cancelRequest"); + lspDispatcher.register(new SetTraceNotificationHandler(), "$/setTraceNotification", "$/setTrace"); - dispatcher.register(new DidOpenHandler(), "textDocument/didOpen"); - dispatcher.register(new DidCloseHandler(), "textDocument/didClose"); - dispatcher.register(new DidChangeHandler(), "textDocument/didChange"); - dispatcher.register(new DidSaveHandler(), "textDocument/didSave"); - dispatcher.register(new DefinitionHandler(), "textDocument/definition"); - dispatcher.register(new DocumentSymbolHandler(), "textDocument/documentSymbol"); - dispatcher.register(new CompletionHandler(), "textDocument/completion"); - dispatcher.register(new CodeLensHandler(), "textDocument/codeLens", "codeLens/resolve"); - dispatcher.register(new ReferencesHandler(), "textDocument/references"); - dispatcher.register(new TypeHierarchyHandler(), "textDocument/prepareTypeHierarchy", "typeHierarchy/supertypes", "typeHierarchy/subtypes"); + lspDispatcher.register(new DidOpenHandler(), "textDocument/didOpen"); + lspDispatcher.register(new DidCloseHandler(), "textDocument/didClose"); + lspDispatcher.register(new DidChangeHandler(), "textDocument/didChange"); + lspDispatcher.register(new DidSaveHandler(), "textDocument/didSave"); + lspDispatcher.register(new DefinitionHandler(), "textDocument/definition"); + lspDispatcher.register(new DocumentSymbolHandler(), "textDocument/documentSymbol"); + lspDispatcher.register(new CompletionHandler(), "textDocument/completion"); + lspDispatcher.register(new CodeLensHandler(), "textDocument/codeLens", "codeLens/resolve"); + lspDispatcher.register(new ReferencesHandler(), "textDocument/references"); + lspDispatcher.register(new TypeHierarchyHandler(), "textDocument/prepareTypeHierarchy", "typeHierarchy/supertypes", "typeHierarchy/subtypes"); - dispatcher.register(new DidChangeWSHandler(), "workspace/didChangeWatchedFiles"); + lspDispatcher.register(new DidChangeWSHandler(), "workspace/didChangeWatchedFiles"); - dispatcher.register(new UnknownHandler()); // Called for unknown methods + lspDispatcher.register(new UnknownHandler()); // Called for unknown methods } public static void reset() { Diag.config("Resetting WorkspaceManagers, PluginRegistry, EventHub and MessageHub"); - DAPWorkspaceManager.reset(); - DAPXWorkspaceManager.reset(); + DAPPlugin.reset(); PluginRegistry.reset(); EventHub.reset(); MessageHub.reset(); @@ -315,8 +299,7 @@ public RPCMessageList lspInitialized(RPCRequest request) * * PO and CT are built-in, but still enabled by the capabilities. * - * Further plugins may be loaded via the property "lspx.plugins". - * @throws Exception + * Further plugins may be loaded via the property/resource "lspx.plugins". */ private void enablePlugins() throws Exception { @@ -1472,7 +1455,7 @@ else if (def.location.file.getName().equals("console") || else if (def instanceof TCClassDefinition) { TCClassDefinition cdef = (TCClassDefinition)def; - return new RPCMessageList(request, msgutils.typeHierarchyItem(cdef)); + return new RPCMessageList(request, messages.typeHierarchyItem(cdef)); } else { @@ -1485,14 +1468,14 @@ public RPCMessageList lspSupertypes(RPCRequest request, String classname) { TCPlugin tc = registry.getPlugin("TC"); TCClassList results = tc.getTypeHierarchy(classname, false); - return new RPCMessageList(request, msgutils.typeHierarchyItems(results)); + return new RPCMessageList(request, messages.typeHierarchyItems(results)); } public RPCMessageList lspSubtypes(RPCRequest request, String classname) { TCPlugin tc = registry.getPlugin("TC"); TCClassList results = tc.getTypeHierarchy(classname, true); - return new RPCMessageList(request, msgutils.typeHierarchyItems(results)); + return new RPCMessageList(request, messages.typeHierarchyItems(results)); } public RPCMessageList lspCompletion(RPCRequest request, diff --git a/lsp/src/main/java/workspace/plugins/POPlugin.java b/lsp/src/main/java/workspace/plugins/POPlugin.java index 2ffccbd7a..939bf1207 100644 --- a/lsp/src/main/java/workspace/plugins/POPlugin.java +++ b/lsp/src/main/java/workspace/plugins/POPlugin.java @@ -84,7 +84,7 @@ public int getPriority() @Override public void init() { - dispatcher.register(new POGHandler(), "slsp/POG/generate"); + lspDispatcher.register(new POGHandler(), "slsp/POG/generate"); eventhub.register(CheckPrepareEvent.class, this); eventhub.register(CheckCompleteEvent.class, this); diff --git a/lsp/src/main/java/workspace/plugins/TRPlugin.java b/lsp/src/main/java/workspace/plugins/TRPlugin.java index add269779..d238bd0b7 100644 --- a/lsp/src/main/java/workspace/plugins/TRPlugin.java +++ b/lsp/src/main/java/workspace/plugins/TRPlugin.java @@ -61,7 +61,7 @@ public static AnalysisPlugin factory(Dialect dialect) private TRPlugin() { - lspPlugin = registry.getPlugin("LSP"); + lspPlugin = LSPPlugin.getInstance(); } @Override @@ -79,7 +79,7 @@ public String getName() @Override public void init() { - dispatcher.register(new TranslateHandler(), "slsp/TR/translate"); + lspDispatcher.register(new TranslateHandler(), "slsp/TR/translate"); } /** diff --git a/lsp/src/test/java/lsp/DAPTest.java b/lsp/src/test/java/lsp/DAPTest.java index 803a2c17e..a75dd44ed 100644 --- a/lsp/src/test/java/lsp/DAPTest.java +++ b/lsp/src/test/java/lsp/DAPTest.java @@ -37,16 +37,14 @@ import json.JSONWriter; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.DAPWorkspaceManager; -import workspace.DAPXWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; import workspace.plugins.LSPPlugin; abstract public class DAPTest { protected LSPPlugin lspManager = null; - protected DAPWorkspaceManager dapManager = null; - protected DAPXWorkspaceManager dapxManager = null; + protected DAPPlugin dapManager = null; static { @@ -58,8 +56,7 @@ protected void setupWorkspace(Dialect dialect) throws IOException Settings.dialect = dialect; LSPPlugin.reset(); // Clears other managers, registry and hubs too lspManager = LSPPlugin.getInstance(); - dapManager = DAPWorkspaceManager.getInstance(); - dapxManager = DAPXWorkspaceManager.getInstance(); + dapManager = DAPPlugin.getInstance(); } protected RPCMessageList initialize(File root, JSONObject capabilities) throws Exception diff --git a/lsp/src/test/java/lsp/LSPTest.java b/lsp/src/test/java/lsp/LSPTest.java index 45b321b22..681ecb2cd 100644 --- a/lsp/src/test/java/lsp/LSPTest.java +++ b/lsp/src/test/java/lsp/LSPTest.java @@ -37,16 +37,14 @@ import json.JSONWriter; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.DAPWorkspaceManager; -import workspace.DAPXWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; import workspace.plugins.LSPPlugin; abstract public class LSPTest { protected LSPPlugin lspManager = null; - protected DAPWorkspaceManager dapManager = null; - protected DAPXWorkspaceManager dapxManager = null; + protected DAPPlugin dapManager = null; static { @@ -58,8 +56,7 @@ protected void setupWorkspace(Dialect dialect) throws IOException Settings.dialect = dialect; LSPPlugin.reset(); // resets other managers, registry and hubs lspManager = LSPPlugin.getInstance(); - dapManager = DAPWorkspaceManager.getInstance(); - dapxManager = DAPXWorkspaceManager.getInstance(); + dapManager = DAPPlugin.getInstance(); } protected RPCMessageList initialize(File root, JSONObject capabilities) throws Exception diff --git a/quickcheck/src/main/java/quickcheck/plugin/QuickCheckLSPPlugin.java b/quickcheck/src/main/java/quickcheck/plugin/QuickCheckLSPPlugin.java index ffa76d1cf..ba7e7990d 100644 --- a/quickcheck/src/main/java/quickcheck/plugin/QuickCheckLSPPlugin.java +++ b/quickcheck/src/main/java/quickcheck/plugin/QuickCheckLSPPlugin.java @@ -47,10 +47,10 @@ import rpc.RPCMessageList; import rpc.RPCRequest; import vdmj.commands.AnalysisCommand; -import workspace.DAPWorkspaceManager; import workspace.Diag; import workspace.PluginRegistry; import workspace.plugins.AnalysisPlugin; +import workspace.plugins.DAPPlugin; import workspace.plugins.POPlugin; public class QuickCheckLSPPlugin extends AnalysisPlugin @@ -87,7 +87,7 @@ else if (CancellableThread.currentlyRunning() != null) return new RPCMessageList(request, RPCErrors.InternalError, "Running " + CancellableThread.currentlyRunning()); } - DAPWorkspaceManager manager = DAPWorkspaceManager.getInstance(); + DAPPlugin manager = DAPPlugin.getInstance(); Interpreter interpreter = manager.getInterpreter(); if (interpreter.getInitialContext() == null) // eg. from unit tests diff --git a/quickcheck/src/test/java/tests/LSPTest.java b/quickcheck/src/test/java/tests/LSPTest.java index 3728a27d5..b9423400f 100644 --- a/quickcheck/src/test/java/tests/LSPTest.java +++ b/quickcheck/src/test/java/tests/LSPTest.java @@ -37,16 +37,14 @@ import json.JSONWriter; import rpc.RPCMessageList; import rpc.RPCRequest; -import workspace.DAPWorkspaceManager; -import workspace.DAPXWorkspaceManager; import workspace.Diag; +import workspace.plugins.DAPPlugin; import workspace.plugins.LSPPlugin; abstract public class LSPTest { protected LSPPlugin lspManager = null; - protected DAPWorkspaceManager dapManager = null; - protected DAPXWorkspaceManager dapxManager = null; + protected DAPPlugin dapManager = null; static { @@ -58,8 +56,7 @@ protected void setupWorkspace(Dialect dialect) throws IOException Settings.dialect = dialect; LSPPlugin.reset(); // resets other managers, registry and hubs lspManager = LSPPlugin.getInstance(); - dapManager = DAPWorkspaceManager.getInstance(); - dapxManager = DAPXWorkspaceManager.getInstance(); + dapManager = DAPPlugin.getInstance(); } protected RPCMessageList initialize(File root, JSONObject capabilities) throws Exception From 4e589ac18b2553eab260df0d0eee836a5c425529 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Tue, 23 Apr 2024 18:22:11 +0100 Subject: [PATCH 4/8] Updates to LSP design spec --- lsp/documentation/DesignSpec.odt | Bin 257486 -> 257991 bytes lsp/documentation/DesignSpec.pdf | Bin 318992 -> 495828 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/lsp/documentation/DesignSpec.odt b/lsp/documentation/DesignSpec.odt index 96a340093ee1365a610b550d157983e7e94b8369..0bfef47e30d53ff3e505fa12aa6a71bef63810b5 100644 GIT binary patch delta 52827 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

QaBLX#*w#Heiktq1zPKz|fMyto{Qa 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 GE&~A4v6RIC diff --git a/lsp/documentation/DesignSpec.pdf b/lsp/documentation/DesignSpec.pdf index 9ba8143d58fdb19b43b7346aedf30a55ee9cee4d..138f63fcd6c2a1bb11173fc534869110435b38bc 100644 GIT binary patch literal 495828 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 z zyU@gci&WD8V|PaSKJV}}%c55FB#TNQgjiEz24unExLk6vUaPhI%LBAroA$}S=?~$+ zD|y8$`=?gxwt8s!uW9F}RIm!;{_DBVJwvsgS`W8Lp_rPg&;`GG(y-avbgajjLfWL0 zuK{i-)dyWCITT+611C8sD*0Z6d`sbHVFu z`rdOEk4+JSrx^`*=`T683F}uv>9UI)>A>BeYvrHksbj~BaC;-yr06aXHwE`fI;^8+ z`y({J=3E)P9V| z{iOUUGZa7PtaT53sC!lLoe8-3@Y(7N8UI3igm?cYvBo_-j;FGA#%LnesZX_cS5HDj zqpv;~4Na@erA{V6pTwh0mijQbTgReb6eC4IZIaIi?mt7xLW@-yp{%c^>!KKLzBt9N z;K^MShaGcCF&*=k6qnc1s*pgexnA=$eFk{8$h&n0ytU;mt<;2)0W)a7(&fDE6`Jt& zBi7D|OLCNHak09X&(ZDZr<)ajnboErc0bb@%rU~HPqrYMSrn0m3pNZVXT>Y z>>uVU_`Ma?{Fmy>KX1t^tPx;@#r#YChrHvWLe$9%;;nH)aQ$$${ z^$yR9t$HM4Vh$i#2X8W=omlchc()62%zi=8A7=*rUr~Vm1MKq;1&EoGm4)?xhXDfo zHw=)fr=uC8xP!f`sF{n2vz4Q(gY$n_c_TYBMp2=EKUyJYD5Z10>Ch;xSH9i6LEf<{Ods6%GQkK+wXtS ziaW(s%h^>*UnW&kGgQ?m74qv2~EEk`_gcNr5 z4imRN0K<#bnMhJ-Tc7BB5}tm6NVH>`$Poa=b+EmB)oD-rkZ@9$hAlwgS$|>Vj`d3Z z#vFe!%Xr#G*uJ_w{I>CWf57;WfF;$@t+yxrwQj>ot~JWXZy()55O&w9Pq{jMebM|U z{@!Xnmhy{yta~~u=WREM|6`3{;MF6iSi%2cAn8a-uOv$#oZBGdRLA8Z&76<0{kqM7 zV4C>Qp!dz>w(Mk0u?U~XKO=o<#Bjnq!AvtC#21w$EY1eTQ#a zOfLCu14Pz8Tvx=S*8!e)){E-i{ToQsV29|w1qb!*3nr}R00c7f6Gy~9ngHg5-ivnD;Cz02?^4(w zRw2(nvK#t?{*w0IT|4;`<5So_`V;fM_MsK|MZAC=nPcYQsV;*#=0lFuLI?6?|R zOwWrLA%9Ac%c-nm*=jsI9>~o@jx0oQRdk5=zZ1Yn3NwhZw%Wf-yeLY)5)%267H;d! zZ_VklHC{nN(dQoG+hhP-JFPw{5auL^sw!>tanmOJeP9a}zDv}s&2DYpdH=+fuw=C} zI6aAS)xERuY83ky?%h8`|cod5Op4jrxt1M95>lM@->aI!`yoBE{4WIx;3W3z?yR z{=UreEO7#I?|ZNKPVM9Sj!e~q-xbpxfcy>_uSA`W_>h_l^&0U8#6EZ>g0dC_X9=Ml zqF0LD1)ei)2qz%uo}aUSHPjREjqvMbS%asRKmL4o(?Er}*?)x=H?EM+Gc&J==@8kH zCq)HsN16AmbMvG`VJ#>i9^dy{_?bxn5`4zm6?HANYhwavGt@80ctsMYO{?E!W?r`u ztxCk#lE(||17_W+>ibG3dJlyk$f+XAco=h2Uc4i8wuIj}?mp)5woqyT^1aM&#t*zB z#^WcL)DfCJfta3v%oFO$k?Eb|P?Fu|+4DWb;T)jIKcXrDBzJi^hbIvCyk6)Z=pV7R zaSq}xGsY(`n4IXeoTyZv7&l3Brl?Qc8v^&O2bTt9qiTl^|dK=~!`(PC%fI%P%%uoZPR7{70@v%ME@ z^ee)5ZWQjjdQx*TL+<>;0px-F$p`y09`RMe)2P9yMP_f2lS-TXr4Yk7yvsK>+nqXp z^7L`ZHSF`mGpA#*WUHhm9WNa(O(#+2T*|rn3AZa@)N(XH`imo-=arBd%_dgNM1-gV zMRIOYFp@AYT<{VR2+xP z9mx;G9LR-;B!*9vX3Tg_mgGRZ{u>$?q4yZcGo@23E-9JG8Gv~pyn$xV;EwIi)q-#| zGhnx84>rEl$JgIA+%=W8!+#(Tvb^z5)}7ju-jljLLAc{jt4mTDIxW)g(r>ie(yz5! z8F%8-j;0rQNwYc7E)d1-RIW*DkGhTYrE}Ix&50>qExUj*2y5er;u*sEJo!v!T4+q5 zWq3rqGhnQV{uN8pigi6CJ7Huizjv5SRV;s45U?GbBToK|Y1t6xm>clu>etU3y{lmW4#eeFhqId z>O;>klrf7tI7B}T$iICS2^nF@j#ePX0&b5p2&{fT)<#OrbDx!{BfO#b^v=x*o89c4 z9hrH1wm6ZY8x#P(7!KsHhM;$W9etCFuLSu|Q?t=+d3nK_~TaID~Lcar+9BW7@E~7OpIu}Ys>npDo zOU*++(Vp>gA1t_m+ye{(hSz6nfS+V|vHc?<4aML<#kpR|ee5M1_VH^G7+<$9K zm|n5G9U&Nk9vqc58ULaYAR|BtVEPqgfGl()Zz7_6NF-E9kH-xJq=T@hCJf~I)Bm9#4Qn2&<*s9i!%<|WGcWo zF$nr$9WXVK`$({}1MdOltRAp5CFURKnQ_B52l`PqGq;)BgfQ@XOUxg_dStbgB3Qq) zUnZ|=dbY?C{GJJYaqpuyFt`+s%?AC+LGa4eR*cmN=M#E|y$^=HKvk9E9U7I5i$j1v zw$W+2p8z%d9eAZHX%@T{Rop1hGlqmxKS0_z+7PaWv`~Gi3>{Nnk>A8?wQ(-V(P{Q) zf6#m9Sl&kF-^xER_lDYnHww~nQjeZ|_NnuUrY&0Z=E<|UspLwO*LZ!Fw|@=Yl2ImY zqi)msxLj^6xmVz@CsA3_^I=TYattWT+3KvvU)a@3+iq>x7e(dVIw_iI4oi6*>REV7 zMg3LKRl{z~V9$ZOn`l;YMHN^)2!h>NR=^yIfS|^06>L&ahUCWoT0XokT{L8r=eB)7 zd{pjKM({hZtknR3EP<%b5Ptj}xrAi~jqrZF{{WMsz*1entW3v$fT%cu%GVwKdxSo_ z7W&XokpvnT);XrcTS4B+8x_P_@C&IT$h^)zzg@F`P9c>huBL5JcOh0D5y_ZnLIMz?P?3SVcfpRrW{ zKQ2x#d@ninqTG5#-nmXd1ba04N$kdgBH<7~C>16PI!n#iFLB20Y8#Zq}3!+F?>8)8n^0jEH~G#(jYKYtN%CkAQnNm7sDa<3D?bm+U~1zC^ksw&)NWIqKw3{ie5iluzehYrbS}UDe3#MEwzhF( zfByBVv8t_C)ve}N7W4D8cw9x!WlVR|wr#CZD2BPaufF!mm*`az$3zf z(@%4Ba5dRtY|!7( zx|D*Wub3GTGSGoA_-iN~VGI6fh2Xs)*xg@MtAzu?e|q4u4dT)7)`z?n*vID`>k*`D zUX3y>?4E2s=v^>DIQMs|K~r{YtcX5)K}`IZp$+8bZ*vB`x1)V2KUlL)^Pj`tecwYz!G0|Bon<24 zK%d?fPG`N-9*6|4bOmWpz%La^$>_mndyg_~GMp0Z*S=G{1YcLb7vF?93P0tIwQIbx zzW_F)=O)DSG}ekcl=f@~3M~{J97PJbJ!X|CUel9!lBDXn0y?{2$DM9Ycn1axKr{om zah*(#E4|e08>$;?T$?;SHdX?NSgCDuv~@!=5zu61rvEr93I(o0&bvl8$Maun;Kg;l zjy;*=IE;*Mo-b{>Ew{V5CpYTU+I#;^QTW2~z8QWV5b%254TL1{`<=Z+7x<#y>(g~2 zuo(LA3xcP1ZqD4nMels|q$_;G#Ao%j{`hIBg_rP@KZ#%Zb@U~a!Ag6M?Re-hT5mBM z!X!f})1J{S#jBM+Z@ONrb+vx-t=6~3X3%ejJcD|fZ_Efsz{)*ja)=^*KMT#gZU}<| zALL6MQMGOzPBOGyGSsWogL3#8DQpo=EJ|mP4HHr^FcPG=7lf7LEomrVpLZ|ID$||C z_0<$gEhgKZmjFfx4Mr#v36H2GK`QdV6pR+#H4;2LDq8pb=Ze7}df2t<&Cd28MW{T& zCH{9xe;HTYZbK1ADaE4CFFg)cAsHMPpI=~iVy`s^vAwA;?7`RQAsEL)2^2R|*VI=p zF*vo37gLg*b>PeDvWW6Soi~PYbtSJ{Iq&Nk#u86m^NlhK()G%d2)2&SfnmXE8MbD=-mq|f&;K(EhbJ+;$x+RhOX~^SAm64yjqa0 zIq)0(&D_u-qYyAC17<5|wH91i$5va!J9glN~rSMX#44*UiD`>y=2 zq8s`TrG3o3V+xfh@}V+{lCZ4uRg7lN9GC8+?+T8&$uyd_KSX5h)nYLkx|TLfDa_;X zMf!vsoUt(1k*ku+L$oq~B}a&OMy@3H8!s9+hd`FHTZS4jHmnC;iFEc|=DjNbBB%mj zGb6zbn5`#>@)^H#?eYJ3J=bB7%xQwnc~bIAYDiVci} z?Hk7UL$-H-YfL$Z`D^k5dPv^TXyiQhiT*lSDqgI3af=h{?k)`x@AsnDKD%r2=X3Z0 z!ftqN#)tSM@H`0Q1J|$9qv%O^jM;Nhf~iAMd+#LBj*G!SzD&9^u>uP$lf|G7(96;c zo1l~03>QQbKO_zinwU{3yLo~|TeeZ~SC9~xYnIxI+_3bEU6##9@+p`R`w@P~<%1LV zzpi*rna)t7Ms8Gb!jOnM3t@rG=*p<{db+4tzzn@m&Vz^wHdHwh7aFx5l_gyxiIA$0 zO;&klP6?zsb>N?+A%+%AdF?WrvMIrtD?#K#v-$B9kUFZw70k$ zxM9 zDkX-8bBiW-WWSoXz?i#b-Mnu-pux5YIF{)ecEB-gm9nyH&9E#gtR8v!EM68m(R`yc zRl0>|wx%k9k#$6SG^v~y)bXUZ3Rgq2j;kD3Rs+Q&@d*Nk2jwA)8*}%AVKx^*qt*}Q zZJ!Ng28{P;YyHjt0&)ho{vXEf0w|7WZ5TZScMI$AM^|rLgV4)WAG5~x)4^C1!$G09Jv%yW-5zz?U{2GoC>1LYuv%QZ10T<~ zX#R#j`*Wb-6q>a(hE=d7Wyd`jUD(&!BNf$Os5pW4RZE^==C~o=CK+KLIW5&E;_d9D$Y@fIjxEZ-;m8C`%G5xC$?>v_3xwV4J=@|pWGdOm!mOZuzzKOneG2A zV`1%U^Fz~r1DU>qzOe0cUmkNsUQMWfcG~a65sNaq8mgr@!XR>iI3tTR|6qXQzG?!4 zk!jM*Tr1HpghYu23X;t!dhet|kD52s%}AK(pZ(v>Z7_s3-0P!cAjS=-Q{?2C84uV@ zs4rg5`Q+eZZ+o*Ec8_Z|<#_pU8+TyGHNNOu)rv6fAq49fDF8cFv0SuBa0Mj4P>k5M z#BRwA1>LH3DX4uXU6tD>OyHW-ljV~VUV$^H)x`5*U`&AM?+vRF%!l z150ko$`Tz|RY+4kBOn>!rY9IgxEuUWu7k^h?DHjo%cs>PQUvw@t5(b;nyt(MS-TV4a%XJT@!_E!QBNIb zYQ`HTzP;>d0IaFjZR^^#Qxwh9t81dzb)7AyCm~XrZJ*)RZLLHKXz#P9V40;9OZxBW zir`&9;x^@ez7w~q^UhOXO-iOROp-g3b&>ret1l~vM4J=Yj_w;`DWM{LW79pTmdL^X zq;PGZZO;)%CMsm5h(NY6I!_VU8*q2wzjyjGh+5mp=v=3Cm30Ss9tGr~N>4YWHaRkL zBOJ?HI9^;tpT=ACI}uOgMB_xWUBh!#1@a`RegUblA@Beyz>GJM;KIr780)Od_bOP+ z#(D1sR4ypsX0nUKT^+H`K!7Lc^6l))*=3z-og0(AyZ_#sv*^%;B#O|Zc)O6`@0fSo zdpc}94NOnsv_ytsD}}yc8G?FK*576!tv_&%od59I zG*A#Q9LQ_sZKzIjxC1=fTE%oo7GyG$Y#D1A8_@7KrsWR`<#x0}p!Guae|=@tUcqto z*ua;N(iK|@;=}N|Uy;yS-VCC%J7XXYRsxT$C$pU@zDZJ(qx>cZ&Yv|<8x3P4It5|& zaBp`snd!0(MG1V-Kl=sYZGJw%&7|NrqSIV^(AA*m;B@?o@Z&*a8nSH<>QC)tF@lV? zT?T*aSofHN;-Y?A{ZXka>dRa)+AaMLlmNq@lZD5QaQO0IU@-?G+ z$<1U=kv@^T2aWi%`?KRK?Nwj#jDqwH^IGUM()4gCg^_$+Mu`waswu3D zj2|;wm6RoRMB@|SXPr8EI<@fGk9SRZXkPqigb-B~?%wc;JltH**_WU`T?bFagALKQ ziV!|?+kW`5KA@7zwR?}4kmsq=k1JG;s>Xdr)s*P4ZK}tDtC;bVIdT0Ls028x_-s>;CmT~|H>KvFW}~RGA7(rR;CxZ(iiu|8 z_-j5{GeO9fm<3r@76+h2eJ9m$U_8k9E-Vzx8&nl%)hAGqwil3Yls_phU@(}o1D6#b z8(geEV28QtQZZes%SemVQReDafy;a4@5*Q=tXkOV6|M+1wz1RS)ZH3uk$721mk3gp zEw4*lRnreQ4ZsQS3kl+I>oYVVcM6)_ttqeXH2{o+z)Wu^1{Sjw^lM4`R3~$7=a2vbZ?7N9rNI8nI-z3OL6 zJ_^z%OqS%@=$F|e3y-mn@sCj#dChhm3r!}EFz>f`5=r@z?EjdTR3Va1K6B1dQzEb5D= zvCVoS#jvD4Q>VYDj_;VVHSx6q9zU1R#ANhX876Fsed#UFGFnf$<8pUTAR?uE0=!*m zRa6XMx{qwZhH;nDI*nw7q&eAgd|o3;RNTvG#M?6EVei4|Whsyo$*d)6@i)CX=R^yFdjF`%(qJ;LW`V0O&j z&tax>XE`lWPbyh)GFz^rvtYU&6k0A@nctV?0`cq2hpctOv$x;ZRCy_t6$IkKN`L14i#zG$g) z=DB^dR&?{Xeonjk=1CW?I&}v@{fx1J%?0O{MfcpRNrRDwoCJ(}Iaa~ko~s#!Heu@s z>u(Zd7?n@BkQj+8XJ62H8mCINhfO)r=I}?fA=*nXYA;~Non$3Z>3jP~;Gi?%i`SuK znQa4eNpv8f0ql3YmjQPYTmjg=Oo|eL}HRcqT>a z)tUq6MF`U--X}W5pZ(C8F!saVW#fbjybJDg4F3q`RYs)*h($p&8bMBra|8JcYi~?M zxYac^CPh32U7xg90+f=fY))f9Fmj3jtPz^&tyjIA@-86GsbI|0x#8XQ-R@oJ-O0Dt zPfnnngs|jAth(Sr$osR0(@>4Hf;Bd!h!{Sq0*2>v?udeGdrEE=Rhyjn3{q-YT2N3# zQMH3|S6mMjVj(82&vDt4fDNY$V`pQH^~^k;-%`kPo0A5falweS;riohQ-#5nv*Otl z(2Me(vYU3g{bDetqWkdG-@4;&=NVHz(SFtEDcZVOXe;Y=Tz+au!3WH_s6GRs-daRh zgWc2s%usRh+ts}f!2wTUfgL&;<%mCpsETvVOb2ScxV)--Q!y3B65xazZ9vTekA;xy zn#x#8Y5`ErE>az(>Ny2OKjxd`x!!{$QfvGP{oClcB*j4u;!&$nIGpJj8kJw6cD8&! zJTj|pYJ(?3ZToC_Mp?_NU@Cr;xnjhnV7`s_5H6zB9&)5-9R37hw2AFFwcrNu6!u!i z@VHOq(ID{gmv9M2e2)`Wkh(J@A;h>ut)R;%3ur+!c2?m7(i?+gd?I5g_MAzigr`Vp z7O~7L++N#1H!!Tk{4Waw-UphOU<(s%@ z<{@zyDE@e;1iOxNYWW>ekqb+$w!lPyYAKh}#*FNdDwp7h2;MK6Q<y?QBeVlG-vvm zk~~l?KF;&`^5ln z5_x6F_2mp8ilhSX-Z@A=pi-xN7t}7^)D0Be z24ozAjee^i4 z^3|x=iN*>84Z{oh<4>fGH=A+c>kLjxnwlU37>b&&g zwop-qcD?&V{0=nW^x7RX-%}xbV97+G5Kju>2-d^si{{UYPG#5=IWJ#@ zv6#=?pYNBq-rVm)iq%_eZKKzfvN$JrX@94qciy}WWp{$)ZF;(gF8RD>*h8!7h}$OQ z>>gK8h+k(EVSHhKJqvY-`xEvCLodWZy*S{S6}nJmTfU&Yx-mos$VyTFY1YW_XO(tb zK9kN2G;)1U8x5~Fxcq*i4~u)3mM~t8X-be<_ZnM`8Am?1PXJW>Zd@Mmem!vbsL)rv zt zslH}M1cIbOs^35rCe1`Oki<%gB2r0RCtoK&XS-m#MW<07A@i&kz~2+2kL&hFvOQ(*leLo&PY==b0nvoBIG5yr8d)OA#GF5FHVDkJB_)PaH>{+eXyU_z%If zNn(7HS=kKe#q20j^jyf>L1Ir2q&NSom(btK$ytC{5=c&yd9hA znPcT-)@#OKkBh;!_zyQgB>#_KZOb+RI4@ZBp`>)@)jGKr3_QQ0|SaJTvTmR-@CS(JY7@ z{@O?2P`w_?b>;JkNB&u87ppOOi_HJDaLd>mziR?W+er(o@|$~Pef}xTM35@HNX-34 z2+9&B_a@Dbf3Frc8HcFYaZy*uCOTl>CPf+A0?-P|;|`6Y${#OB63>;n6Zpa#2g0L7 z51?~pXtfa-?U!SK16Wn&?kjAP7p$@_ z$X}E*xi<=k!=Wq=iu}0C3A8HYErE{a2$hKA}1M&vrd2E^b~jj0DBcM?gsk`a(igq6T=AfF=JAG|z0Jedegp_l}g zZ;k(Px^x=qK{Ty_PsZ(O6bkCiC7URhtAXy^NoF*uDOF}~zjh{P_?5V8!y|p(#<Q{aHX+P>$0Un}WagwF~4`T^FUZ`LCX+nYU?{%b%8h!~0C~a5MBMEPcH`Jcl zp@b~qg;yFYH7E%qon+WYw4&rU>d!*;Ki^iMua zp@3ZREx;qByN^KyLzjBYlluDFPJ4dbK-gW>Q=28iIDXQGK`gAn@k@EK900NAU!h!WAOuHf={N1}4x` zvWtk88=wb_DEdwD+znvMl+enQ;4q(hZ3-uTmZBg@^p7YF>%18*I_50#t@5sFU)*X* zijxk5eFNyl7&RWsqGP0_Tg)2AQH3*o4JHcXtOx$Gq=k2xZNQHswNituJx6}!STsQs z#^A^GV!kg~_Ja+b^lU`|Rvy&6TVWuPsP;a>U2v1Ax;m$&Z&ICe#`Ad;t(#jlG_O=Q z+ciWy^M;%7h#(3n0t-VJ~G zjuS6#%B`i1Tm8!iaV4-JX_{Da^9{$OCHFIvy*6ZlHD7Dz``i0lWIb(Xt`n++8$uWe z{NTN%A>(&mJ`1^UQxPsc9l-?)`q9RB;CBWG+I7-Q^he(x-43Iq;ot2cxbyEQezW)p z`+N4^>G?~ZKGJp!UEEP^qEVMhPf^?TuBV^1I5OIC& zlNb0gCy&eProy&`S8zUwzmRTTLNrOdW8*02zEjbbGpFw3@H+Ln)svqQ6fl zA>kFLkNVipp+Rn7=nh!z`+aLU1@ko7IQiSfatZ34{aiS(Jx*vTDLaLTfju~o)ARfH zS#ziwwyy#B@|q>K?6!()1zXmhJdDzdV^sR-Oh*e|^3@+7jFoaQuuxawQ#4f<y;I45K(kS}K58RVzD?|;$v?GE{CpY_{q ze}3ycg?62l*}`nYq3_<%wFB-3$o7%HFEpCnmI(JFpJACuCRTUdx3@thmTVtcceVVQ zajJ_ovEP1Bxma#@0Jz)L3;GStMk_jZw%*tS*<6~F3X_A`;Wes#T!)I?H2WoB)jAPO z9}ryKGNPX65wlo!aIU{&!?`D4rHGt0BPOmyB~;x_uLMvmac?HLKB*#bDvC%o=}?V& zjy^HV!~&_SvN&?QH1YNf92(MQxr+h~94|PYm|kIQ3>uH)_aDZACkuzft1Z5Z$xbrR zLE_atUN6mvEi0J?z(d0@&VA;ZN?Xq3GB@J)IQzwme7ACsduaXsN4PdI48mRfLpGzPFnCx9Hya9<1rQ0` zF6%7{?u&O=d=3)sj<1ZY2c)N~RM{4g=*(>aEfBsj8ARXYT73^PObpd8fM;dPnswOF zHA9=qUZM*N6T0?#O~zvosocLAv`Ed*x)QafTm>9Q+H>Ca%3zKyp+O;iPG=xg!D<3g zQFA@Z)hq_V)nsUPMbmUu zvwp+cOp5@r5gab@G?;T_JxoH_a6XT9$Ar6b=09SBw;tYQ03YaW9zy0hdbkD!3L`}T z1#Yh+l(vNilJ9u8+B%BD7>l%~888ZA-#2YIRElq>3{(iKb%jT@toWNb;C>;7bSNg_ zuvbHW&_JF+*bnA&)&9P&!K_?4gyTrVYG!~>H65JW2J5tLbu1xW_;{LP!EoR#3YQuu~EO%47 zCiZvabZfuwGmnpI)+gu4`uYrkVc6&`2M*U&^r1wIi!k&Wbhm83-uPt5j`W|8bYP%+ zsptJ=6FuRYx0C1z{EV1O3TlaW>zm}UoI&rk^E$&Jw9TLGm7x19-R4TcQ4Vi z`8CDO`%i-MThQ%RxE=kE_M@W@A#%;|2jTjs69|z;s8q-Gd&%uS&xd!wB)=*@$r{6P zPKRF}T__7Wg#eMlc`v=m<=3OG;yj6 z$z>FXdp!E;85$Xv+$GQAIj5UDX{-KdpxUSnFPsHUa*h*>FE6Z}nV5GOcxXEw2A5cB-G_kb_{%Ncas7`waAnOA}4&O`G6kvPShk`3u*zYRI{YTl$%cv}8W zHXTt?kT3UvJNQpPJzmw#(xsStiCr3|u6-ioa=dh9EtOBp9Cudjnwm|K{aCx+g}5mv zd|btSAhK!V$0QIJ(w%=&Ym*eXV)RpLm&B(!So0nz6*9;H7s)YQhko?;DeH3?YXY_r zFLHY5>w(_ksUN=~{4`qP2Pe#aRPZlh;7ZlkmPm%%z&7OA?dA0C@D4mI$8haP@I zYPheTrKQ~&Lvs?!i2FZl_3`HnSp6a9NRk4DpmWtBcs~IwKa{G;0Za$FAx$T4Y5pQ` zOC`R^V}l)o#Lak~VEVYebwtY_cRqG496jfW`Rh&zq;;&HQ-i{F#<@aFK4xyCk^B6N zN=O;!6iWwl(_e^8RO$MM0!rm7E{w(#_7ICYk--6)7V8j0y)%FT(+ox$>o9(0$7iQt zr)FerPux-Lm7mo#-salaA+S~5JL;$uw9aWqo5y-s2+q0{vSS?x=TQWTMB?h+-m_Y@eRP48~c*MtJ%8N_n39_~?_CemCNjatAladg~W|mV4fg zGdYdvIlqU=*1E-fObkX1sw$)PH_f3{?hvZY)T@+bTAz)|5bH`?lrO*tpX*h>UvFVf z@79;Z62$9`-+iqmH~Nr$uM68(f6QDCC;+c>>Qr07?fZp$=(B}hW|}*yHyvK&Gk!p@ zUz_Y9U(iqYmQD4L=^->qv>r)kEx9jP*-net;v|cEQKCtRUbw%WSQGiZrdJSC+w0vv zVrUwIcr0i*P`2cn9hpUB?N)>C4Umjlhq_-OcLyt8?$7kMTHK~Wo-1nF?q;p4w+)up zTHdxpNl(#JLcj`SAV}RKr@m+iT>695iAo7#D^x3+Yl-^BeJ3|K4CT!SS%gug3LiiQ3%a2x+e@>9sFx4?f6b62?6-e!2ZNwC#~F*yUH@Ll+^RS#ew806G4VR^6V4T`L+@?u?=a95eNISrMNy z4IB?EtY%MIh`p`>OA%Ldv@UkX$^GVMfjgL2D@pLs5y_fgR9nn!ImyqTOO}PYRJ%mb z-IYhDS3sYbKHtNAK{bsjxd<|tWFe8BU-)hsLxfw~TT;vZee%~B#s=)}7w&*AJ;g(x zcJEjG)H7RzbK|sbU6N^bapK7CdpmHix*pu=K7H?jmDu4rvk&O`{LHD&8JJoE4$GzHt&yBK*|-LQ=naezkj;#*ZuzSKyA0EmJ69jPmFj zo-;8Gqo9y=CKqsJp=Kud7W#4Rili4DH$$JE`hw*Q9jM_AFQpKAg{E$C4!35O+bh@o@@}rpA&S_h`lN(wVQF&u$EkZT` zl@7-bB}gYKZ<4h`5IlN=t$hqV;ib?3{5Dj91ppmQsKo8+>I!(K89Xz^opUlH-z4aO zFnk^#d)!%O>SSzwIO3;}YF+N&5u}QJ!v!y{6WJSf4WBRnUE_9MU zOugb}r$Q)brwa1MZP&kKA!HU#w@pcBDoC<0_GeSjB0qC(?^Pn}17nV?>KpE7$UA~i zYzl?G=du`1)J)iqUJhSQZKVmvG1EQ;KT&MO7n4wyv4m47^G?1jULsL%0-xJS_(cO$ z$1=lHO*0SSZh|h)C1v)f#G{QVqhLi|gP=OuW^iMg%uU}psA1Gxqx#*STq??*`>)3vi{RzZYdCfMLH z(2zwHe#JaQguN%rT&_cgP(WUXRA1-tHcs!jqIfi&1M_@a-rIC(&@!&_mbRC?%seJ= zS8{W0h*;2EW|w-!*P+^HBHRVBxgT8jWU<&ry!*5oJC}4q5}DL{awZ{5`u5`rzCH0B zLkIGh5_OBNIA0!2^OHA>2jo*;XPWF+T?_qTKiC^;aRKZdMx_hzR#Y+8`40RY501r? zbW&5XE<)535^qDz5ImA8usQ~Y=pmQbTz(S5pyw8mCzRl#BV$;%ndfO_!rgt;=J@)L zc`!GjKrZ6XDmVBXiJid**RVx(&l|&1FTqdp!BZ^Hg58k7FDZ#Ftu%g0uyBf}CoVwr zcrDsZGLT5~h@1a-_#m3AtDi2Ct`Gw@vd zh||mPn)BH}{>|*Bgmz6OTgrp{&)YmRwa;&0s&dO`%(?RnM??(=aGiiSyY42!o1?Zq zwl}Mw#v2?j$0&NwlpUOuAWEbICBbGZmRN#T^+2e--mN(!!X7uP+AxE@Sj*ZVHtA64 zF$?}S-M~Mu2$}i4(2aVp1^6e0_sAi@+PL1X8c3OB3d;Csw^@GLNYJubzp@vagYtOh z+7ORH!BaC(e%%Z?5;{YXjY4S<8tx9 z`BT#M0R|C^)^I(?n&qmG@LMh9lZ0Xd^zHEOHM>^v>z^bmma8S*{NCx97O}t|z|BYw zoYlLFMWf#}Zc=}9!;j6DUZ|0v-=6RPR(-(#C{h`g_x2bLRD6VeypNpjy{xxqtFi+} zPVsqM+i$@rS6#z6=5B+^tNCN@Jq}v_Uq<9vviEvOA=lrSO>5I+d|kf;dL$)mj2Y2e zA0i`t(2GBNrIQX;rmR_}1zs?r`H$S|w-$|X6z}1n`AN6p13wN#CML0$Nk_QkOJJVw zBm=aUHb?@g_zypBrkokcM;p+%!)-aeWzGV;FPu1oiMO8vL6vV6cygz}$=}X&5WK{e zEW;v`-w-E@?nXE*S*EGEStkX`;T)Yfei8>#O1wMZ4CajONgCgd>X-I%_~8aehd<+U z{yeY;u9?s zabNt3JdsJfo++5ph<)yN!)7%WAvP$+kOaYxLrH;w+MV$ceCi$f9iQBKc6e53AF#}>5KMPA>w}Cwyj96?T{-HI1)G3<3F!|Zo z^lFc*8ZdP}%}l5YGr#eOV*T}}_l&2HjatRvi|t$?cdSDjA>)#SU`}!)8y#1_1yyWp zS7dS{tF%7ilmXWXq$IiuCz7cp)(6*EaD%h)!8O9qTP>Qhk}BIq-P8XJQclwydQKmH zz^bY;=i-WJOKFlC+JFbum@!h7*3>FWRYWg-f$CC%toXmG+S6i#0Q2xfa*hso<0~;@ zRf`PH=N6W#5{nAwD06zPtqLu>PdU}KT+yLbHXAM$Y_rIU?fFaA^9qgM71p@f4JZr6 z0US0n2U~-!%^?fNM%K)v(Wf}(##9(Z9kzP)N26Q04(5#bNXZj_R##Eq z3tJAY`Bfg44wmx&)MYkJkI{7P2&_cqDhv}BFeIO+T;o=o)>pCMF85fhP3%>F)61b~ zRT#?Fx)e-bl&UPYlOLV5oceOCGZ=5~%-OFPmEOG8Co?6jlmCDjr9)_wY(tPUptW`S z@wD3hL=?Kd4zV*5W$AMN)sTe1q9;sZUXz@COf+N8xsRX{7vcTu<=pP0txLk1cgS|x{-GP2vo)=59&PXNbc2(O zMix6)D8`OY;99998u;pz){BSX9sUfqbG2HdQ~*fyJst-bZ1=U*Q( z!_4z2%@b=MbZ|76e4=6W4GSLHQaaL_R>vyeehD>ZuSob<eIrGP@4VN|{v_~uNt7Gn~53-x@U1WyRQ@o4H z+e)6^mCF3NiW%$-=VYDQliN}9mI0Ym~3H_4-%)=6J&D|EctlfTAaNG&}NM~qfC zA8@j-Emh)JJMoPvTP)rc#aG*{Iy?9R@)87Vs){PQI(*C&C)?;StZUZ=7BvV1i8W5z z(>1>=a=BG$tZKf^#nbD@tJ`h}##ax+7ujabLa3)QXjo-3(%s^Y8Q+&A;EDzI$y>S-j_**hsWI z)wgA|ofzFY*mR*cA`>aM{MxX(^ykasY@Lg(T6@Ni2$9m}{`DKHBWZkW1*@VEt=HBxm2BYqYrTv}7)9nU>N>N#hugE8Vdw3@b6c!U zy8CE0x`k#J5MM8jBRC!^gUKSMXAuN0i?fu4B-)ozHSVjmA^rl6z-B@|OWl_ImX1*Q zrjBpB>BC=Slq}DSyS}t9HdmQ&wy$c6H%zd+r5GI1^!8xdPE@Q~dKl7A>sdxu9)m?R z(pRi5N@_t--A|0-k%ZQBeQMNQTKu$-!Ouq~GU&pHc0?h1!6m~$Sr1Otz*TQv@X6^E zdPQ4&O>3<=B)&ybS87AYkI}zQApg!aP>R(`g3s&N$V-<7l$`uOh~xf0h-3GIzXe!E z`wvq&0n)Z+5B1vx+tb`*DaElp$Qdx7uexqS=?Bq`2oYUOvr8K@>)_&nbo54Hg0>rt z0G+Oa3Ljg3YeryGNr{Q4sHmZ#;hT=U(XH<45?14VrM_xybLbmT0Lr=}m2)oqaBkcW zEswb#+L0X5>@A?ZZNcfA`r?E>i=nnsl^&bh;@MN=H~M63#&kii&9f&LsxE26C3sW9 z0z69AeK^F==F|N&&y2EB@*(hSS+_UQql5Pb5i4RvNJry~%3=(nJU^p8`2n7)0#7C? z+R4!9!k=Uya+|mUaT=LR#$Z{zCh-xICxz$~(2VqgRNCohXCb@|;G6}xnMV8W)zLJ9 z>)Z)Yv>;|XI$L1ULjcYF5$P;>l^1oQKS*K|jS13ZGU~fM29A>a<`bV7pY*b!9z@%R-mGf6~WvvoOGk0TMtzQ5& ziB?(au1QcsX4QK7oa_=5ZNzo9+%-?`&|ULds`Te<>}H%zRnpx0DO3fM z8RZYH<)APSJ%tuB@Yz~+ikE0EoYT6%;OTs#o-~%+;?%$z_Sy0xO@W?4TMsTn+|(g~;t>Lpzl%f^yfYvpQprtl3O@ge@mb-h4t#QpT+gfq}X zH9~@hrH~t2JMRs-P~<4IClB1+I7NeW`k6l@L9g)%ADWRX#BIU|zypq`E%>!58QBh^ zPcKL}G+=njHozVI7b9wkSZAg#czQsLDq+1=D zl#qk^`IvBglCgZ=seuQj!gyOQH}*C2S9su8-+jxNx70|w78fb5>1$iUM!v}GeY>46 zd;U5grLprCfw5y{a7ezycG4BK#)jG9gWpt{`#2?r!-;y@)1VN}DZ zY#7dgliPCoSooFW0Yc;ar4jS!vQM<^r-V3_)6BL^TEP}fm}3k0fW1lAIl*YAMi3o) zn~fUm4=`nJh%bJQi=(zM7W}oA{I%wPzoLx!XTc9!L`S$vReSWK`C5eKuMT_vc1z`IhS}4C z1|(AjpDlJCP)o#L1$d)oNqmuwQGSI=qdZgoQcOVSfY^c1c}4dK8RhVZAP5qiQw)Kg zaE6@`jhA?VcH!_eMx|6~f_nQljIpP@7g!#PV*X6>u$?#V4BWT0KuOF=$nI4GcBv>5 z{rdCBp@t_SX&H64m)EPZIy~9??ejbAinMEawhE{CgzCfhVBBDjU@sm@@ex&-WI>st zlh{!x)PdcmWoR6>bPT z4xLe{e;ykmCW~5+61ce8zw#)t9vaBM!4xOhUm5mq7-oS7FF<91#|`;}18+p*pT~j- z#qzmF2}~UD@0{L93%nm5M7pMPUOCti4e{v%N za-Wwr@?;=b61l%4q*4sazm{O5Xd!>|kEQL2U=$AIFLR8b3Djp&rS*P)FP!fv5Ep)1sco*>~HV~AhPtH2aB-2 z9f~~(nrd@eDAPv1C{ab`31U5v z0E1vaMJY1arT$Q;DWVpkwfKEPuv4O_xOaF#52U}O!_x>*r54WLK3&N>Fg(K)`eZ_Ssc~x6F@jf5ViV)Gs}Y&BML%<^-W1d_;b3zQ8n_7#8ebkM9Bhsc>mMspk3lT znsJ|3h%Z3wuEZa@p&tD5xVKU)ECi+jOXP0eXwlKHC<-N?!3uht`iE1jSf~B8A3+4M z;+I&Y=bVtEZBaj*{K4Kz?=U9f@#kpZY)~qRu%hy5qdV((#$Y5gNH%Y^Pt-3a$G1s{ zK5=m}IEF2k17@jU7xkNk)^T`tK;RoLY7x@&n1wBznew0s;iySJ2FdhK`~YwtzJODY zO1xKUknok?rz1b`z5w^mD#TmVt`yPtA;hltv`%8teVKQoqU^;`5CDiJY57{{r#Q&< z4w}ZALp(>R&Qw4d@I3%+raUxDGDZ%<=M-)MYh8ozWDc}yw6=jMO8 zO#IQ^hTE?;n3{xal95iIjqVna8p%F@Ypf)PK^P+bOP_L6;}mJyt;CaRz%9>Xz!T-Pq*AfqoTg^C zekI`z}}&d>ROkuZ3(qd>KmT;i~~9z%6V&9IO3pCcsIZt&xs$S6xQSkU&UtD5rFH zn5bfRID{|neGE7}j!Kk1+i^Uw694z&cgL?Qz_L^<8fB&iOAlH4 z=nV3iO`}4(c3Q2Xvz(iqmd`+`$P&nk`vUB5OAD8N%F${_3d$wp$XuG7i0Vm8n%PTB z&DY&0W5A+1$5k!C^NRc%-3WS12dMLkgnM=AmvSX~EyISj()Fdq%hYMPXCO(fdl=3g zNx%HakB~Gb>!Dz^TuF0Cfs6!{YgpkZ#JrHw4|~=sKqT^p?v~CHt&&~GG{h!SV{e6n zJkA?dxDr#FbPX$$_sy#_Oe6pO(pa9O_OafRj!wDhY0YC%{#~mMX2Px_z%T9s04{`K zoqu5uI(=#eZfOqs!jjB(=qBFetIS5GC#x2eUgDmDu+q$0GtjN0UZ}_N|}^qV%3y z!I%9nfKoTaGEH$na2H~*%i}xPrHGcqf5lAyK{NkirfjTi?5uyQ{L8@QV*3xV`9I3( zf3VK~aK7UIoAVX3w=w+>=F9QFEnhCSzm_le2mbk25@ls!W&QtRzWcrH%y(84mKK zr(jUO&q@)BAZzbk4z)0`lTUnd)~lwAf#+W%Xb#QGX&?sJ#QG{sfu^DS@GtZJ9FG`2 zlhRV0Kf4-eJloYwB$?LTKekT1dE!j&S|ytb?{3;6e^9;~|1aemIvMKQTBr!*8fq2V zEcuxJ6~t2Fp|WIoI8`^bWd6LU=Todc70P7yaJ$Q!@+#}@CntodkF91oG`Uq={3j2W zNl1I&BdhxUh3{JYVavc$+mWw@SU#-mtK5Xs$mwvtO%l>Bf312mmL8p^*Y~enMkQx5 zR|vbhSM=Ju*7f(^Cf)bzwZQuoHm2W%x7@!4HzJ0=R_ow z4yhmaLn;Oa2TpGp3yHm>zkR%f>L2@6kL+3LwO_9dgWeYK-LIGIXSR0y;6P9xUNCev z^jiXgxy5hheTCf*7uW>L&wK1+FI48&*n*{F;lJVsvYwqVXYYx`I-xzU?_PKJ9s=LJ zxJw+wl7)caBB93_|GndL{HI_1Pyhb^QGEYzfaS1kcT(s*F_#=P4$|V%SE@5 z4X3#kyA*s_Q&Px$OH+(^pLh~9F<8{*APWChG&L+Vs4NG=9<$GypCA!SWB(rjVL+b0 zj50bd49vL9sG~A7xXwfwhhbdEz3-{&zDZE$`Of$Ed;fUf&u4O}?$g!PwVXP2>YP)j zinf+j4akPt5r_2p<#o-iJ8x`32)%(2cGs_N({B6Y!1n+?fsi<8Ve_Kpw)vM&MMzfR zdBvh-YZvNhU>G4sJ3_0sFK(z?Fsb=QCqf(GJsPqYA|6g$E5Y-H@SL-FdE4civaDm^ zc^Tw6eOXg|-PMi18H&)x!|?ve<#m@gZ&8l%2yKG*NLx|2yy3#<4_yw=TM>%?wz;Xb z?RHd{L}=eU`o6iPq505(e?0=vP`(232*Z#5*#H#jGvRnalw^xywb>m`)#dhh(|rCw zFcglYM>Dj{tn8fJSYCcXVZ3O-z~VuJOG?Yihg1x$95%e_yz{H|5f_XcHG0h03&&kF z{^AJ}CrzF*b=q|F|4)CyAryoV5*|fCK86AaB|nAm8NDYOlb_M|^iIBj#9d}UXcu}4 zH=?J|3+P3B3clKn4x&!OSPk{KJ<6yEA6{81$mL5Py zA?+pT8gvNxa3J|PT8B1pZ^Bm_kR4^A5oj`MLO0=yldI4i^bvm@sz4W`6{s1vCub#Z zPTrb)82thru$+wUf4MsDdwvWP>pWuIyYv8wzdzl}TyZ|`>FSk%^ zqhFyv;SesylkiMZK$^(?Tnmz+#KG`efEoeccS7zT;y6A)Y~&dC5dQ@Ky_lXjk#s?r!G9qm$y{;|`7`%({xSY{QXRDVGPE4sgq}eE!freiPr;Ys z#rP_`3EzV6!bkCO{23WRrjw=QD{e8jl6#)N0DjZ>R{lC+qj016Sz=b=NaDANe=1SdPY5pxr$n1{t&HS1&OX#r*z;imB{nB+PwY)}CjW%epbtZU zg$z^$wXcKU66o*Sf#PU-C5toY_#V+yh(h%uy2RTEAa})4*JPj=&gN@uoFaJ2)s`!^sH~$>8?KhC~<)RH= zL%tGiXfH;j63YA)H;9jOucP<4kFdl)fZpd7?8n{YQEoC&!Snq2!Yq`@-HV>)R^qGC zeli+3_V@BupyP@7ao`KnaS8s0OCpX;1S+cF{(`PUOUWNlH;m)W=nlMqUxaQ(rT8lJ zDS8A(MS-wFEELo5tE7?NLOi$=5&kh~T_w)JoZv;*<67=+@hkE!T7{1B3i^cNmo>CXzkL zF_9d?^lvB;7r@EpOYXms|Nd0IzoUI!n` zzVN~U^f|i@BI^1@%udaAqcapp6bJ9;J2QdD`fXF{>AE89i?lWVgqv zjLaU{pbRKNdlV~xR)9ME+0A>f|9s2<;vYS14?(gWD%BCn9yPinm_3Ttpo7aDUALfP z@|0PlM};#pYX%f`;F0y&^E*)X1s%>fOM*tSVmic;9TF=>Yox6~H)?x|4sY4orK0)s z;~>fq{XXc?|Jlsl@!f5pi_-y>x19yx1M|F>ao%jiI(Mjy9q*`#&soHDEb z+e~_`sewG;Tar6w-j*>?^j1LP_-PuHMmE&U>cAVINR76Hw#sNU z{MBIis$&84NMna(_(xKQohd@QqzMnhy^h z?NeqM&l;K^-i!3&cufbHN8cPyy-Axv-?XRR^nN}s8z{MxiN9$ba;*2CQ}ua9FCNx` zegDhr2IKwsY1!ka%$}u<-ZIa`?fB{EJQ?qY_P#Tr4$sJ0T$q>;33Kc%5apcS#Png7 zt%J{ner|4Jg*7uoN&5mL5bDxKw^L$SA zY+E>}FieBvr_bK9MLFjkkeX58IP(S+kEYMc)JAro889+);a^ws@K73R!W}xGY$Qzp z^k+nwkLM%|n{W;MQR*B}GzJ*mmMvqlwJ}@fZK>-@w$IPj)a)$>$&2L0EzP6nr3j}h zdFaM)$C#}(fUCuL7z_%6F4&WeH&5B4kBW*yWJ z(pfB_u{4rCX!HS%$I!^VL}uy32X%zn*;}4Pu;=YBix_cgDvm%LZ^Y>= zj{Z>|GjjT@{?x;UWX%AeMuM5}EFh4^K~v0hWx8_Vf?+~Et8s_V>H_*6Y5ZZT+bv9f zDy$aXMCs_w{qBAZ&pNGEaRvfFpGzSPmDuZHCT&Y^N7tusM|TTPaKEr0HkP~Io#>4^mMLJ%y$(=w2ZO#nchp%W(F4vOVh7(-{`)ZyUTHRWEXyz>~g*B z@W7lNQoU-3Ctb-8_vTkZnTPcO`IV{@VLt4M+PH9(x2Q4aMJT3Wj6)gzm?mS{Mr$Jn zqxEwF@rml`cqe z-~SS?_}#~N#-0F@gNd(hc{cI+mgfM+XjJkuK94^ibgv*@dLS)ew~I486nPYI zQslK#D9B#8B_(JZD_$ti6l>%~VxugVsl(jEeC2`B>Uj5f-{`;`VUA_0TI;U$O${s; zmRlC6%iYU;3j%9!nne`smvYmE>B^Mpe(Z~{s=F*B37$6C#>7;WJXxGTFDHl zEBS@)aykJD&{#<|V^6U@WdN-Y1DsA1u-O=JSoh@QmJO0Hl2l2PIBD=lVH~FMHgVBtGW{zyC3RfS^7U_^>2C4>x4Gxu61me(N@zh_p zx-wpSrnWC4ZuBE`;>udI5;&D^nI=rL%opZccwAe9XcCWFF{HEvrFlg$I}3Tdv?t5U zXupnn_=aD-k9}AE^~R49-3Rw>+PHV$hE01xkj=Y!b>dGwNB?>)j$->8ufOrzU%mbs zRA^J8k(EGsR$$9cFG(v&zaYI?+pfvO{KLW*`7a9B z$d}sY_~(R|$V+XF>T>_m@L}yu?+1YoLT^S-dQV1AXi3eN&BxVvS~)*V9m8Lw&Q?FR z{xvEI~SqD7;ncraR)wy`3zhQx-SQ#?5v*daF7{TrCDN? z=7$-DU^cWM#hFgpcPy!oW{zz%W9+8=ih~(rD*~7ez0_ar%9g4LYR~DDYENGj^dfX4 zjK@kh3`kUqAr)Hbah0YGfv)p`h)baFVtFpEU+-;tc-XCrHy>ZJ>Z2=XZyV@(WcB4w zJlfW}C($T8zh%mlt;stdN_>Cg#lw2O=N>+K~_e`O}7a9{E<6vF@7Lnuqs z(-p51)Wb;7=@zY`M|V3lt8UYr0g6m#us9z2AQU(n3aa!56|L@eQ??P_=Zs(&wjb)t zBbE8ynardRYrZ?*bD^)sUE`@q zYjihy8q?N_tLbKrxBa+T}+?BN$E|p=u!s)cBF1K4jT+r+B;AKu@i7ZsyoBlRSN@gKwi(v)3qx@fo=f11M2CMLG>i` zdnllGGYAEM0IF2@Z4w5?<*U^ra1X>C03c||CWl&8B_A2z;g~kQBLFklv&feG3|W(( z;h`{p!}y1>e-L?-A0DWvRI(~69YEvz(<)tAX_b`3YHC-;<7j1V9GHS9kJ3;D{ozuN z&p)KXQ;J22a)))^;YC#!`du->nppng2l1?o_+L5`%SPl3x@u-wV$ox2eolC)Go8=x zxog$>t5%bx-~W2|1vS$sU2Oms|1$6f7kX76UhKgtkF)tQek4DQU&y!dqQxa!WQ*P7 zve*$PV=EifNU`K^hj}VX^I#9ja^+$~xu;q>r0f)x6E$=koq$=mEBOr!GeW1>Z*&(O zk%(ukRAj6a1|J)R0Gu{PArcucl^J)P=pK87^3lHW7O(0#sn(uuIcbnfWhMM$1cTI9 zH#x38LdReWt}QhOAWVZW-Xt;2wc)|@8>=t9?EDKZ7=D>I%Eum9dEu}}^Tt-sYw3B5 z&T*Ro6;;9^CPy6AFS87x^_yhbZrN$+upG90WI1J#kR`*?Y-zXbFr!Xbk`^Vyf)SQ@ z!dXP_8jM6ish$=;0^IV<(@Bn3k%ZD!@rqbvHu?4M1D9Ei2=m^3pWURqEQ@ z+1bhe_1LlR)A-o;@6k420378D==mrr#7+79*A1)=rGWVgu2MpdWjH; zIF->^5u4&mE6pucasz?meysX+|2%)YpD)s_fTbcfZTQ_3gMLalObYOe6pwx%dq-sh zE5#yBCDP|F+0^f+D7=Uw)8FRAxhN|m=LP36=SR+@lh1HgJ0}54(r6zzL$p7fSu{6i zgy!V5F=;16vvCIFMQxd7&;{{{r&B#ZWwXAifyPv+JtxmVuXLZR?(V5QN$*v(Q$S=} z>G%8m#%Rui;Y-CfO0MOlE;iZ6`cL)?cUwzFwq3nB;J~Xp-aobCw>Ld^#Ul;x@BE)H z?t0|vt9Ctg#pSzZg{I_|ESO!RcQ7JS%(eQXZ*>9iXx`RwYYU0~@-{!MpL#90_oTS7D)#GWy_#Nwr0VxbJdO3Sq< zbllVT2PkeW6MdAE_{)Zrb@)#CNV9LJufv!0@jl}H_gvXo_e+P!5){Bg_AKm=K0p)*NZk~LCr?w-uLh6`N3POR^;Jsz@p!JEQh2P~ zl?~)x0h~J9<@Eu%6E$>k)%;~e*I&PH|9($AKl;E9_56khN&QwVElb?AwdZFOib7P= zXupF4eW4yMOMxCv;Er5pI`tm;KmpC= z%iNSxOz(pR;(^bSc_@yClKHwiDF-`qnsV0Ve3irJ{9G>Sf=DZhZ;L16T>R%K0MC16 zt4eQ(E2g)BZ$f_a_hoM8%bzFnQ65=((y$VEMJm4zAhIp{B>uar~i&aq&YvYR=WSoqX;3m+IFoPrqo=!*|_v-(r}jl0Bf~ z*8ty=kOMC|fE`XCVnS)x1ioPeN$6Bi!&nHDSk`c`l|4AGUwk|KR{;#oKuYXH_f$%*J+yEJ`2-3%o4aKu=@>jFT}HO|p66 z72!AD@#-m`Cv26i`{YNj-AJaRg*i;|?Qme1{c8(I|+boxGEir9;V62qnK6 z3V$`YWu>X2X5&(v&1G_)OfHruN*pQuEt&Pf6Fv7l@Gk!QU1PE$rNW`_#^C1?qsVN0 z`@uCg-AE;hi;|!55s)bIQ3V;G7g_942l?_SAC9v5o^~u1{!^V? zPG_tc6w2^t1mZ=7WtDto(K!CXqM33{e4*SJUv1lDd)4->{oA;!qRfGLwK%8DUy|t! z%q?gtAO(?PN3~;{V}~Q@5Oz3rJHB#o4jW~W4nqoKz-c{=azqCc1RNsei4I4E^Mg2Z zAaI*E5|Nk~%OnIeI!`G9-ds?p)*+FZ5OOnfU}j{QQGiZ<0I_)ro=>~#RkQ8$An6l9vB;sbtT_9z<|LtPPbEAM&;p3 zva=FbGD&F!lZJ8wS;aXoh{r^dAy$h-bkLTHHd-GsK=-9X4q|X3NW@hwIJji@b7NaCEMNNGB3wFp^SZU^ z9f1|cZ`l0!WYyx&dM@Ihf23(n$@0d<56053n=$5z4HMT-^g8UJoLptafb(ir23FoU zUaz}o;N_>j-*Dbg{6T(1&7V+w;k-*Howo+&
  • 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 z z@tag}vc4zRM>db+SU5n)RPZmVjTSd4V?A~s4D}uEV4g3RWnx|Q)<+4=>=$2hE>%hw zxz7Zil22DlALKAI!Odw6UsOf>n9mr8Yis$2I!4px38CqOYb-{EK2A zS+cH0r|hq3AaHQ`7t)nXe*9uU}iO^<=E9;;w{s` z9AQFUjG{TEjrp{eAWi2Q_BFIxZr?}|{&-~$+{S1WLE{olM&h1Dt`9V5em;2XakDSb z(qg;Mk9?8HyVxpHc1(xsG5NKVt)gwSAMw%`Hpj8k`d7f-;xyIgXO%UGH`fR^_WCBtsKZ44}%XzlaN>;5n_q zfPe0kGg&XnHKd_jui%TqlFag)_)|HZDt20*?XTHhW97WSTqaZz9Q^*PcT0Q+s*Hkf z6eKW9BniTJ_jE2pZByClm-@#((_fRydUDKU?3hX0u`+zG*JED#GE^s5&qF!IJ>9Qt zoK3d4$9(!pJ2G;7D~8uA(qlHTvzUf2sN1{~Wpke^41V>Fd=M}s6TpC<3~@OzzdD3H zcpSAvFSQ@j#oA|F(#6_q{JINpBbIfePO82&Fa2|Rp#%)SPrIyW;>w**GTEn+O|yB^ zC84B&;*l37^F9${77Fui+Dy%5d2oE8d0Q@}!{U&mHle4HR%P%1`4N8QP5eq%76(Tb z2VNG3`p4Xtv8Macrk(s8#{(Qy>nhWW?^71YVNK@+KgQ>5falj< zO2_r~mA!DqdBOY19&e2J6W1qhwbLxb5K@eUZr;|!hBpg|&y1|DDCTpnzWOxCsm7rL zWkgeK^3CSGqPXSIWMJ#kR!sf$N-?c~nesye*Lsg&8%w_~O8Z$($uAi7Jc<$b?IJy? z9El7QUEg6?Gg(^FI+A>~U%g36a>vRjE2HzGA!}hiZ@>rEHC&I+&p-?16fdMBPTQoE zJ~o`cliB#}#);>VB;&`%UU(+*wMKEOT3p5CYM{Mh$x}dXAZtN*$Ki{x!mtZ3t?>0% zh9eBe*#eMMFj35+m%t5~I;bem?ew(T_;Y)=&9{3Jwmdx3TOnGeJtN?&^s$;^Ed_U) zi!T%J_BdZ``11&P*(AMY5F4Nf{pJZalxrnGiD2t6%NES#^KRzzR=i zY4B^v)pNcl3w^E;T^fdE?Tp}CSX*h!)x}J3dTPS;f-KveXg&`G;SO(lSS5h zS0)}!CZB1@>aeI39@{FD zCZ4}{QmUjRuOv^Jpa2|^#jq2t&}^rpHs(z63`<5+fR@zv&7F)#8K<|`*J%f(w!Z-X z70qaOONp+3_)v44Y>O9<$8jZcz#_l16L^5FGw#LM?BM+zaKh~L)fqxhwi26@)P-Mg zZJsQEuAD3j-k{&=k{#%#SicLBcIeOXwfLB-o!MMQS0~MBF;P2HzzLkUdS%oEu-3m)$HjZ}YCU%M@&dRFa3oQW^ktA)b z9YjTKT(sH1AWAkUjF%G11p}&=fI+`1v&6#%M&*DvWn%3BRAvH-w{VCVUXwO4H@o5h zKM~khbuh6~qvQd$;Fp&)w=@9*-ykZQ9IbM~^<9s>Dkl&S^d|*Q4wf|0jcm8h;5-{J zC*U8}Cw7XQ^h(wlrdJe90ap16E62~st7JA(29Pa&osQS9WSKp_>?**u?M0D9)?hEntmbVJb<=dOyj+^mUKQe23IA!}GXV&nk zV0MHj3PpJk#$=CZ7OC4)d8?)e7z}L$60hSLoIVWXgXu|Q#Z;-t4VEXD zzScbw*6C&4WO-RW&tO|R&(YA-zm?)Qq|`jmFne-Gt9Pc)lMa1nQG#e&(XFlq&lAlv z$9+&~@jmNjb>*`Z+LXb$ETLxuFH3PZlNyKgUzSs@e&~!GoEsrV+0IIon_r3M+>|Ty z_hf5B@+>lYHell*4ZMJ0n0jeb@Md;ZW1OUNfS#FBw)L6Km72IlnY`uolg~#wuzn6? z$ag<~!|QL#7ySyhKdoW};X>t5H#c^;Vy_KU_<>jX`DcHq|M0y1_Wt(yKdTRfi0mWv zfne|`IT|_eqGfPu0184$f`IUX!Yf1pwSnNF2GmSLY;ytI+v-=^cdq@i4I(xbx(4h?coW@KUy7Z5JA3WtJ;vAH3fz2L=?xOutRArNjTlot%tqvPVGM%FEw@1@UlIJDx7@}DhWEMB%=1z0WCoQ>HmMS{GY3dz!o4m1mQ#Y212Y~s{r&j z-~0pu>T4bL6bJ#<|1aqI3mpy{79gGPQtjgLpk;Xv#OJ@m^xu*SDCqWGDqe(z4@d)$KKq`REj>I73|BOct+lu#qRFEH-fg5q;|K3)hgB=Su7(vhnT*%D}Kk`2i>tI*F z&5P)54u}OkkO=&@UEX0If)3I<&`TeI77Rfb{{w3sgmz!ndXkpEA_I!N(6oQUMdl>K?;y1u|h~MlTg8>H-`(nW037A-M&_)bC zR5&y=wE*#XC}B_@b_h^YmQ(lpm}r+LITV5675q0xc>vHFF83jwIDaZNP%!qJ^xSai zfqf`kA~E0(kQ^>CLONh@{4?nfY6s)`l?GrCI~W*|9nxUeE&CcAO(_7S4sgbd;-XPAVPjC zGa$>p%zuO#fI*?WfIe_s?O_bA8;p0~;=4n+@1TM5!q|C_f@as`d&(f}tMUy(KStHT zF7CI=z=6FV0DIsD2E2f9z#rTpz$X+q00oqQL4GALeE1Ijy}&=Q_kmPuS48;a;cn#e z>`oi(M=nD5BawRm`w$>%VFyry*oF%ZM-l9s(7Q7ue-fJekU0c%-k-qyz>w^xR^Aix zP@n>W!eIje=mjG3E8(ErAa>XhJnu5aH>V#RiU9~dFmC;=I0vKdkT`oh0k_>A!+ncH zxP9UL@>E?tUm9&CdWu4h$-PtH{An1W1n?*av*ROMGx) z0VSYtgzwQi1UR<;J^XW@zW2itp&Yym0Iv0&5J8CffbR6be`F9oE_Y|CK4nzmS7=R%V%EN!N&rd*GaBm~}KVTc)2O@sM{SBl?48aZI zg3pK@>Kcw10^!?lhCsyAp|pete&|qF2l`F|yNtb00*JkzlK>YW>NgfUVkWqszX4Zt zZyU~N@N?j}_#^VzoqhR^0Vo8*&iQ-Qf8uqx3WtQONP1%K#C5GFr3Uka3+|Dn4Efxo$7Z{B!62SX6~5jOzM?3@2D&Ao>*M99HI z6wWo@v!~rD^uNK;he&ZRLp+2qg!qSy{vBbwh>mkFy#$Ky1MWGRAnvJl&=pV-ATajb zA+aAEyK_$85d!1n`hmfByO8~GK+Gi^aRgk1L&6?G$PsZ4iuGp**`0(sASRfb9d-oB zyB>n7I>xs{g%=l6%Al+cF+9nLR-eZg%dYLjRcJADm*|?EntgbC)#tcyD(i_!ssB zP`Dp>yL}eiru&H8o!R^DYAB5B2hQ3<D~N^QdTC;2+cUBlbL$2k;_#u*3NL zq5JzqyzdG25A3#rqSC?g{tzZMr+J`CVvkZt#zR^@Fo_ zWj!R=0h=D|iGYR{^=(?iVzXNE}{cHn%4urM~Dl2k0392 z!0m|+R|np&A(G*P10x_|M*L>)T8R7~eh%Ce@bA8X=%~uT$l+*;vzLK=3(p^z8o28X z_~TF%9HG2@l>u4zaSnlt0~Zd0hWgR z$aQ};P~JD@-X}uveTCtM+gJF1WK4uSfD8u*=6~Oiz`_xB_=~#^Oi>;+4Q{Td6{e^FV_tG86Wp?*|;ak8j`@V%!Fd}r|Jp$ZMa6jya6|l4K z7x-`Xw-HbW{@M2_0vGT;8-6a_Uwh|&I|qJk;P;60_As&EGa=dpuKgp&95oS`i~Fxa z9fMqzAs@DvyDZ%jLz@jlZZA1`K9v1Qdk^M|afVq?@ z5utoo$lsY~*BA(!9%&45KW`5yKWhyxHw~C`e*qD^?On(J-Nr$OmHgpu=3yx8x?(?? z5BlQgY996kkjw)&dA~V=i+c|ZyEiY7THrti_oo&>jI#f(1;9rva3JOVS-S`@{!}a!pf%KnY?;io5>xktKs)B?XJLK$np5%u7`8JWLs>CdpY zyEyL%_JFr~|2F7Igp54ZJuR1ZD?A zK$O6+g&hREMwu7BY#)&|0r|-uY3+7HKqw((0@OkP^oUwu_?N%wMc{e?4=XvC+gSet z^?+ys{@;Ic;`dF7n>)c5z^8Q2mBHH^k zhy51K2-SYj_wTV1#5(9-U+@Pw|CeM1j3Yot=<0{H;zzRi--hqc=nC3n=o}~P9eRrS0{Ez4v7$pJe`XPN0?fqK3-_q6IL!w76_{VgG zNHun!Fa59dg-`-H?O}cY1z+txD12m0!2QR3g-9B?|0Q36enZbd_5waaSBU2Rse6A$ zSKNOux8nYnboJXz63hdCEc~#0|3!9%Q0-{%3;lc9)$Y^q{}G&lp%^eiI;`)%peuxG zKj{1SvMcC+nOyz{u;c zzW;)*cB?cT)%TC-3PI1%e@j=t)fY+$6oWae@4pxeA|CVp0ndMruXdL|{8#bILkT={ za9H1e!B@Kv_8svr;@Rmx!ZV^f+O6vGFZBIQcLa>yfWgpVb^irj?LHNLRNcQvSBQc~ zD*s&F-*!j9=nWWr9n$w(fhAxT{U>A9-)2|4%gm4J`}eY|y~-}|3H|^7QyakW4Hyj_ z*7yHa_qIKf97meq_xu$F92Pr+g{msvBNvMS$fkJGl3EFr=I(Y0;?V3aQavKOi0*35 zXn*}ZZZDbcW*+X55m_ajC^9mmB0b#A%+1Zs>@nY=uDE!N9q(o8N(;+8&v?fh?1r#k zONYEeV{uszJLJnW7U%D67wMvZ0~KPhsY%DXLt`;i){HmCVP@utU4a=R`Ap-*ZU~#2 zbi6xM7DFJ-c*$$Ktf8S3Fu2IGuM-!pT{1pyf{_517OrGm;~Kh%@9gTrRi0zt2)@g6 zQtt=x5Pn{2``qxJ^Z^{;>Y=a686U0K4g7$ci$_$on!uGb&}Xvq1% zc6epA@b&jU(dfuop9nJsWRz+Q#LEomn};7BP|4~IMbrqDn3Ag;i80ZUb_Pg4^<{?@ zKI9%r+~QZrrw!RXMEWtvOiKN-!v6a6$G3l59662DT5yE3U7jyrQz(QXR)&y-HAQnw z6w9FUyjBL03(K^Njbbup0%a9?`0hQ@xBhU$NT8&xlsAFOUp%~d{O~$N5Q)|QieS+P zO2G;gC&~Zc|M4Fr_t?IvRq^}J|NA$0zyJQ<03jEjDxOZeSdOeEGQ?PhLO)$ad3iEp5Lh;(K=P==T!v>+j~M-S^W{i*m7)FLCSK7 zk!_aaVVx_mX;~vN@bKn_VSu*TRT_zl-y}qZAel9g(K&@KiX;h8C24J!D2-WBV#kXW zr37r0;Y=b+$Pf=kNTH|K6{Z2YH0LkkeiSHs5~rMA5_((4mo5H+Vq&-+vR0Tnrd`Hn z6#B}lNs{Oj(n6%n!p>Rig~m=Ib!F`|XGMxlST9l)Qa)2B;hV^;#S#zloxDJYG8XB@ z-a-KSd56&0Dv%39|DE%9a!U}Iw% zt8`Pvi_@@^*7m4XY^*ZkCEGbCUX_IRRINs-?z+)TdwNy13ZE9>l0lJM0jOllpY{!c zxJXF*)wfMP@0}1p1(mhDP_x*emyPCk8$qZ{0+A}Jhnh}aWE|SXn$mX*-8@MZ?WdEW zr@Xps0|D<-PO5m)d#Nhhrbeo2Yru7-3X63%1scAs^5j41sw|@#B!A>Ywd{i}EZ2=@ zmvYD4B&g(<%AU00Oka`%Da(}s0yT(^7Ohm3Duj&HusXH2N37bcR52x;RME?qML(4) zRZ#HmF7(ukRg#2QaAlzQI1$YAWUUD0xzaFst-7nEraKurjTgF3({vlAhi$r&uzM1s z^MV&OZsHdxZoW>4qEysVYkP!f$O;i@l^Z8S6_08vM3iI9DtV!&UWisC$St`ykTIuj zTZ0m4D%sBGC68<0+xgxw%`N-s;pG`slq?dRu;?+7Y}4d-E;KER9%mri?%M4{w^BW^ zlRIr~k7OOQlEtQ@m#j+`Jxa2EImtq<9?>xH%fx7!O1}45wDP=aG_sHyJ@jya|JIy3 z%`Ye|jahKltd=GBZJ}kbKNAsAF?jd!>F#U%=YM?q`TK_t@8182GN*6e{rvhTaZ_`p zM)-kcKf|6Lcwywb>{J3B#nIQWJ%Brks%dx0*6eTy^U2tjj@o8rtphYL0`x@BxbT! z(xCH`HDj`s^@q$56R&E>b5Njx2r8+^b&{}pvSxFnn@W;&G+Cqk=*t*m60e$C;`4qQ zEKb&J-gHCR#RaD1CTo;EeGxT~_?~J@YN+t?z0@d7(`;6CQ-MYNY40@Eg@=l}@X){2+f<&W7K+eRQp;scjWWusGO&J{W_2eehAc}-JWVgq9kKodLcs`T zXlVJBSD?Z2G!+?1J5PpV(7Td4izm+65l&%^8+UD{R4Ze-%QbJ7t=5zT7 zxKT#bZyQm!Zy1iKBr(o7@^L=WsKPE>GcMU&37#0urEHkH)=f}L&*$P1p&-tmUw?T0 z29+*827)wEp8km>UwsRYbxL4*Y?;s3@j{%pSnzE(*|hw|9d4JZASsgJ#~CH)N8^NF zG970vuO5kXX#0D~HN1F#ze=3MXhWPlo2lPWKKn8+mPtVI(Nqf|_qPe<9xNOR=Qfwk zqw5kPoTcWHLuHSdP2X=Q<9nG1wt9%1)3LF9NE07Qlu0NG;nBQUC~ly%yGrm25Kf>hINMH=+1pI-x7s;8&(jKFgT}Ipn>BA{KD3B2xi= zVAIj^gmW5plVqJKg@AF+t5(U0enE0^$p8k@GrSxga|^m|;!}T~e_|GdA0bmLS_~X! zIBia=#%KHdUAv1|0|F;7Lo80Rsia4L`R>P09|#f9a8f<5Co83q?V@8+VR1mkNf=37 zQVN-2%>+{j$P+eD6N*x^8CAXEMjTNB5CRH zh~-{7i)53$S&PIFsvK*5!C8rny^}>^`dH56x^f>2QU*7_^>VjV?SGkvFVs2A03Q4TNyVO4(xjV!oZ*a}n$Q_Bg8FCFBUhi%Es^!%>Z}f%*m~Hl95%b|cKa z_`6dOJ|PrXVhdPIO(LYVH`+>O@(VFMbeC%AoJ?U&2>#uxZ>VU1=E2YIKIf-5=jP{z8X3eERu)c#2MRV1hZ7hDEIy zsihc0%Vnc&$LZ}02VX!N1U;3lGu>A5$CY(?9V5cnz_&8c1oHOy9;m6gvHw^ul*uc*d#MduXUq%drW8{XalXN>VmgO>=IL~A+^k=7BYQDS>(8?uk?+b4a zOBX~U%J5rB{hW_3z;aKgLA9CGq`NrdubY=L{@U9Czoy7G%#?mYdgVFe@4gA&ND-17 zLW%;(wmuj%1QiM&B>AyrO96MZ0He$WORQS*^io`RHOVaa9jX=oKl%7;_=4Tpn*jv7_a9*Z zT+#=$y@<>slvhN}Ml+JK`}a59HPrq&#sCaAis_jylymd09E&N%7!U_V z^ zHVUaAkmWdK`a~{HnLd$=Q>IUZIAysXef5c<`ovg$VyZqd;|asetxBFrP}{@hthJ0W z0)t8emZx;ve8y{A0ZuGWm}__VlwQJl931XXiMth@&|bT*2t6T2Wja@$#x^4#RTp5l zVAD`ejfa4NnMjN&X#d+ zYp@N>4CDjEhZ3ASz9Op46t^40TDpAB0n9~iEbZ!Du==3}Enq)eTyMQL;MBQ;w8m-3 z#&NY=d#bN0)$g;OuDA+*t#`2p)|xyu9Kc>$Aj553phY%dRVkCiMGNp ziny|TjqxcfmX#%E+PW!Pf!Sn<5v4=bdY2Hx+ImzgzrYEequYs5kjt#Lq&F4%vr{g$ zmVcW)BcQ9{L9(pas4aQ(WJGh7#*9xBs4;(~X!6KyB(PXYjzN$AeT9n$!{u1#y*wFyvJnVal2Vj zgYO4cKpDir!*yCA>n6Bf^swuZMWNxtVYd5Uqdyq(0rTi!s052SR0c|#dI z;e*@}zPs65F}D_j9BXNnan!-Rqfx_dD|BV0+AzE-xvmxKl}_jia%tI9xRyR^LnG%YNOP0kYHw}`PO>Zh86!Oz_us5`1e8kn4@zZn)NirQTho5*w z?f5WIely}#YX_e=ux`X_7g8Fw)!toGF*vit zxWM9yiGiF8LyU@2Bm=M8PK@P+l!onzQTDR$7DqBbu#gh`%)Pw^#mTWE2Ij2OggP}0 zD{3h~%nHJTt(*pH<&uW&iLp+>#t@+{#&=yr3=?JGh6)DNUScfEr4}wv=SdBQM+V+@ zHOWE*xy+)qx(#TpjzCr`1tn1trgkPbRA&Wk60WN+Y1m#aH|R?S8?EbILJYehUWL}` zV(40J8l;o7AeZFhuq!FOslc4Qa;f?n+ChwExy+)q_)X6zmx|UB0@_)z0j<@=Xsw!{Bywqj zU))e(=)82rXsz1oR?B79H?aY&)iKy;gTA!;qE%?EZaXmwa+%ea^rixHcIrz-YY73Z zTy8*Xbun72CMbzq+I`O|v{o0RwQ8?hE0c4SD!|qbdMt}( z7O=%{dOp!qz?RU^iRR@Iur3B{)np|WO~`{`#i}hiqXO13f3;|4Rc7s+kK8^m25enK z49b5u^jNhk-%gK$XlAu0z3CZ6Q?1M_W{Y=Kg|`Q8Kq_{-x5;ICJ@0ma&8Ty`8>ZXg zC@UdS_ zk~86mAZ*$5TDl6P>P&%5IP*+_INVVI7hZ4VOXHN8WB5^7X?9CxzBh~)$^vst|0>Jy z?*6TvH3l!_fjOq%l@;s7`hCI+6@WQu*DK(sv*^>(xHS0_(GO29FId+T{k6>OvZudv zmD4RwBj+P*mPQVxf(%qc(=t5kdKAb{Hy)Yu&{R&lIgdB038ALkS;>X*TK7xkD4XXW zFR5i~0uU@>Sq{(R&G>H9@me28<=C3%AFo)9M(WB+=saFB`b+X`-58aFX`X+)VPsC8 zD~DK|#;Y=nbg)hjL^<;})?D=Dvcy!!d1}6bepomRqoWb|aaJNxON-0S-q=_v6@gzS zjzwy&etV+D&j1yayER%BOIm4NSCAK%UWnt_*13pGbn1lZLRk^K zAfY@w50U4zvzOzIx(IKymV9B%8N3mq@TNEAm74)aT?9CaI`Be?ELp%2cWHTcO6EWW zIEp%6NBaoL?FzdAaMVSBql>x#pMYUiMJ;lmAwnEgU$@q4mPH(O8xTjREpp0;s`f5+ zA)Y{_h9ngYxtAo%jx#>NX&cx(Inx?Oh_Bc0aTVdbEQW%W|289`T!=QCW%?SqSLlGVC`BZ_l~c zBk0j(tgu_PRnVg@Lfcedw^}Z<9w`*NxSSYUwWi(2t%4ryAVxthvw@dY(4%g%zEtQ@ zmxUhn8=yxWLq=#XSrwE-MOZVic0vy?T@mi6`nr{J$-}mrE*u+sv0U~M?x@Sd{E>t;h?8;Jx%ezAPqnP zak6{B9RGe~E+%N97$hbub|qZ* z&Uko$GSH6eq}7}vheGk68s9wh!~F%p1G%UtJsiU+s%bAkc};H(}ms;p1F@;RZ$04 zhk;sG!|Rgc)RD9Tim!^t?c}nCy~(kHQA8V9VS;ge4TZ(5h;Ua|lS_s#*~O!V zuE-K&tG*mj5zMR~H6YerdK5%6t1@dqwVk4=XtX{H!|Dlxa-o*sW1lvNrU?S|wPUk{ z70;kDv(THq1|rFd=2n$ygFrPD)?Q*P%O#&Wkgc95Qoh{z6ZO5`}L4cypOtT5G>{x{=7`Gw4eiwwt6CEJjhqa26#_t8R?1{@$Wvk+})=dR}vzr(N0nI8-B70#~+bN(dO;DUPZqJGhij#0C zTLkoo*q>1s6-iXy@pRn=H*Zem-Ey;!O^D@Y`fPC7AY<$OrF zu`Hcg3=$5vyxh#e!F5{h^D=r^j|DYU70vC$D2QfOan=rM+Nn5Mjv$&$K)VmCoIsQp z&5ce?R1Pq585*jy;u*AN_OznDcFs;tYexCAm&v8|98p8hNQ`BEWa;#u1)8#uMxNB0mtf9zw^@@OFRnD)~mzscN`m;e_M#!jY?~?VydX83| z#nf*nMnNvK`jXyMkc^%BQUP&26VT3z+Bq{>x!kBP;W;yMuu5M>Ft94;SIcGA%G`j7 z>LW~4wRf>x!ZBlrv1*6DofykK@)P+TiFA_*((zNZEU6S;f_`%;h3NaPZw%F6a`c9N2Lv|*Ckea|XPRL@|pb+1b& z>7rcnu-%rt2AA6_m#Q!I93sPt3Ya*cn~QV3|}vIc9( z=}X2kty@cC6@ds?s;p~RFqX>*{Z-}sT7Ai<964fKz8@d>#GnntF#8^Es4AD+iBXWt ztiGf-75cMNE)@_b1T?JR+~dOAgIt2>Q9awLY_KTi^7kv)v;isDzkdJrx9{IRynnj6 zzeOdH!`=V=?(Nf`0b0N*%lIa#uH$VR7qo4r+xY}e8@v1Pjb;GK<4ImPHhx;Czt_U( zy_TWwxp*|5;Y5k>fs`~pa5yx4&^zqf#vLkw1-nd~H{pXm!`l*d8d4bL^)fpFP*Tv*!Utq`Ui$|57Dq1xr~2JRzFFYKEa;c5e6m!5MHtrg-bT&)qr zm_=q8@>dqjC4m|EG_5+;Do<>H#A?_o08XK?pfpT}gCg9(fYlvd%K%ikLs>b9@2N-^ zaBF~o@hOhL3<0+Uv=i0_pcjzE1jxoIdj{u)AX6T>3YiG~P&)=|H%r!zkOS7)!s2D% zt>M^4MS69PE$RKTf{itq8CY4_S_tU2@tpB~46jYQP=nK5S5``RKNu(|4u>F&>0qVM z;&nS%fcLU`H=QdN|FMA0y$s~F#dM+K?Yb^~N(_wGJS;Azo0a&MY%(L*<`A7UwU%%T zuuZsZO>Zh|0Kql~0_d^xCF;Ox*k*s)6JWp4AO7WEEH=K4hE-)9$q7zFbP!kdb=E=9Ob%arfH^m00bxT8 z6_xXr@Mi9Eel&IFV4wk zRY{3GSD~PTd3$K7$_vJ_t>gV_$;^6dYM`hrHOMQlu6HRl48&j{KgBarqac~$-Zb2) ztcyD(Q$cY&ZZ|JB0Kx{wGi~98iBoe+bzX$I>z23tDzR2Fvxu;PpfQF1rggMQwSP!X32?ed0 zxd9Z0ns4iMSjr2#L7|okI!bu)3_3H53L9#OsGQD>@KG1)OuIpC74+Dl3^=?MwvB z4KFHNcb3fU)F?=1R%h1mlRG6-F>!;&_)=)0q(>=t62B9*cl%V-NQlYRDhf zo!hChETIYtN@b*mo!l#-YHudp=4WepKF z=rU^93ZL9kL07S4Zl^{;GPAmq-c;z%PRUegoKVn8<_1{Uz^JBml9H@rwt^?OR2aMP zVzY&{>^;ij!iE|+DyKU+{ca02ti4GsJtH-iB~yVxsm`q7C-+LG>P)7flgx^>o8<+~ zFy;lr&1&gLNJm6y(C$fBfsuv?e>2qHwsuX=f|14zV5EVuG?&xD?g>|6k#^8xQ7U=V z&Rekxis zrIJT&IWca4B8?FgsoJ}k7G^)l?K~qb3R0P~X_)GT{&-z^iByUR-P{QMoK#+}E5`_l zbP*@aUXr9818Pz9@;Pm$A=5f14hPMApCxC(|eM#!7$+tx~D7KSv|4$H~XBJ!Tq=1ig6jup}-3+~L!S z@j)R)VpW8xPKq2KSYB=pX3keUlZ)A_>jeDnj~Vnp1SuM~LW-)>pC?$3$C(}l@W>60 zz6mGaoX>_i;TM*G0)~{8MSV9Z*Jk~%!7rGuhxMQ^$6l=K23Fzm3u(W%LXWO4J;?b% z<`oj1Jgma>cxyKO+WEFtNT6ttae>qaMBK};3NwI8#yt*TNp$h1exD%|44N}tsMsmj zmDWrpa4O1#ZN z2^q7OcDaV&5mPZjR*cbsSZi6mgsgA`tf+EAR*cbsSWyR7BP+Uj53~X(Y_@+=I#QpO zrSDHd` zzrA8kW_hvEpWeXbnNG%4XJU;pLafI7)smU@5^aD$jWGnO*1K3$G;kUlYE+b}%+t+2 zvt`N5VxXArg?YMHG9~aS6tp^%wy%Y^=OmL4Gg_y^QeIg9WexwuyoeEBHQuk4Ox?Dp zva#V*tdYShTc}|@nAB2%7kjBukj$*FsD_W*DVZ!r@Mb9d$M9l<&Wz5)x^OkOKFk{a zOL(zaODwPE>PJecu>k`$#u%vDyh-P&^b;;aJjb+KqVxYzvK5nmMs?JpSkKsjS z&zjSjj9%KJB@CKitl_^{GGoM7jrVJHX7*UDal^4#V~l~S^)8i6yG2@sff~0{qac}C zoms=j?UYOf!3hQJYFQ}ooUeoNRfvWW`kxV$7 zjh0wtXKts)vSem4P)zrN4&N)8sxz5_Rx)eIj+|sNdTE2sL=-CJMGgPOIx|Lm)p);F zG8sGLs8M##NRfx1jG?G9)a25O9s!>Uq0ou|u^nZ-cyo1RfJ zRc9*v$M9lEjrWgfNJFy6dy?*oX zGit)##k?^2!D9_^B%BD=S0KWVH`TYTmCG!?WUOHbva|?+*Ok4CX<=>58s2CxEtaK{ zF&cI)t>LkpR91NtkDgf%=lYn%8I6QfDa_F+4D$wOu!+4QQt+LOWIGOiT;o zRp)k|krs~vRH*aF0A)PPIxBpjDPxE_5g4r?VoQmiE9KhL4YY`o)u$SOZuk3> z`N2XIV0TY&A^!FB<9+|EEU=}-3^Q9KSFnr^MvFmpQvuSTk#OTn5ZC8Vnh9Z z_`l6~DwgMqjR(OI#3E1_4T=ShaCoHQ2!$sW>Lu+lA?*GU1cp=CeX4kzlWn?QNj!Wp zV#lfCoUL8RiiXY(8LlC(GvpJ7EV>37yMfkRI?1F#)U5#kuR)BX32>WmUWnAEX>c}2 zW2=EoHJsp!k)}a$j0Q)jG%dQ1JpTp0|cY{Rd2J2^oRL=$(w+%8} z4W}#a`j;CHQhyt$wg$SbfpTk*JlP=mu)$*AAnU3@@>>I4V!B_c^7V4vhmJ!I_@Dmv z%fsF8UVRe``-vc&FjH{jw_n`cV<9g;(clR)yp2j+UR|qYku&A;;4~aR14|J)?*<2S z#6UIE-;GN8>irE<8dCxy1&M+{)ehQ8hfzUw*;84z_5KVo;!}Q17dC3(ZG9=hP@q0e zrw^GvR*+cO2*mq~ZCyK)2?_%G!E|Ax`r6i)BAId~8QVUl%N09PoLCWBXM$GO$jjP} zFQ9d>VKTj`7~zE0nXt5EI`Behorw`Qb}vSKDwtQay`BgF7e1c!aZM>g31j;yG`BBZ z3AKu=g-;RIY9;r$3&`d*ysBtda`sFSva0&J)CJkz_HFhclqrjsng~Bq;6TP5J4N7` zYVTra4-$-1Vo*bcm+vJ8PVsEA$R!@O_4Y8?3;o$Ej^d9H0y?=26SVO5EGy2{A}(Wv zb-b;DO-&5=S~n9{%cXc`jcBaXu*oEifJ7G&1F7ETa=D!t1-T^ezLSi~3b|7* z8GHvXBoolSeFJK0icnLRvBGY^siDH85LQq~;kt5}1x-yg;81RoMlhnwh++LFHC)VI zVl2z0LT1c7scdcb%BAW{^%bXY-+-B#81b`CP~xQv2n6%;%BGcB!C;K4~7`4^yPM96y!3iFX>GMrLj{kS%{!7HFS|uV*_GpiV#zmsR)y7 zzzr3KE^_${`Z5ccnrfh-oLokrnahY_H%2u~%wA$F%ca6)Qpq5MU4c1!Bw^mMb3yXmahfR>sfv{Y44l6Bnfd#Itplw=jb1=X&*j%UGAQw=bblgkJ&a}hDn z1H*}m!*VY%mgQ2RGHHKmsKTB4QUPO=<{6}K-*8^k6k(++sjeW__Lsa$SAN=*?`>N2^s`<_)m zsVO=vs`|RM>v$F@HPygEIk}9WL)G5JiwF2(II&7!ZYRdFTq;Z^?GL@_8Rb&#OU=Sc z-@f6js42opUB(K#?^y+tnxeyzs;^rumsx$e;i#xd!AY0KIiMyCCsyspw-civmsx#D zZ+bqtRH&E`(C&L`^%H}Nz!Dl|QC4MxwL&iRe!VQp83~r3fByI%-@+@~-cPqJ5*%?- z>Mer!_f7alJf|?1NT7s`f+IILjNv1iv|8}Q&KKO#Dlf9Vz#TSj@qri6@PXU|_>cue zPPJo|mJ&8rlQomS0MFCI`?o=c4pR;6wfp^RlMYSl7?g544{M0Q7wahaXi~>aM=J~2 z%XRd46KAw7rH||C?h4s{NY+E58{r@9S8nFPxV6eKvl@C`qT(Ix~!?6bE7d(*ge8J<0 zl@>k+xLx3Iz$O>#ZA$nWYVyShkDX37Iof0)o8E6-M6Rt=V0*(vft9edl$d^(Q{X}t z*8kDofB*RQZ^lZzcE6XBqfK`!$pA0bU0@oylC|V)n{HMDq%YRZTq?QgYI!wusiK?s ze$Ii^Ja*HG7hUH{S&+^B?9!kWHMwkHrBCDxtn`VTft5ayGqBPpat2oVM9#oUpU4?l z=@U5vD}5puSk|0OpEy>ZXmYvbX(LUYs!g4&O`Wbyov=-yY$CyP1vmPeCRLxa;%C>@ zVlfW#c`J->WD6C}bb#2h?e_Ke zKLrZSP)C}$eCpI!-`Y}pGn&7^=AH@J6&&?H;th0^!0uhmEU?$pPR48*QpQxEWnX_T z2FJqqdAv3ch#xM{^tVh>a?_=Q$LU3SqMH!MIMQZ}t3+Yt7on>RWxx8?9s@iRvSzub z#_XEuJTud3S#y|~;*qe*F95KBzk-_(>F61dE5CZVr)N&(N6sU4oT7&dtrj^&tU!}O z7RRab{`17Cpc@QL!6~yJoPnV$@!fGMGheU8spAdO*kd$H22e5sDOBoj#INl5dAy!q zWkvdRnP1`;=f1hN=~&K!EQCpW&h&Qr>fOhuyRY$||MBVP?;k$Ad;jCz7wwn?(zN&3-95#7lh-qP~-;69$uzGg1IWri$qL|uUZ#PFD5Fi%p~Lo6?8!`r2D!E?Ae57cQi_6Y9H}Ge z_-iPR)HyXr0FINQ+9je9w~$M5@~WCnmNztKGbRGtoVo{!W-%Lc1yECFl44?nB2JH# zeSTkqFE?{(zI#LF)w>UG5T1v#0nwtF#S!Zc581uHvZkHIS~h&~<}WlaVe?rLQ7J#Xp+qBRY=1w48!Q}FUi!DGl48n3PhToh8gU&VFL^>@B-Pvdqoh-o8 zd6+YyE()X)#mzVws|pYjNC{ud$xp{T6VApg2fI{3bE~Exs{F#UjQX}F>TUYFR&_6o zU-Lgqt7U^&L_0!HC5lF+iiu-qWd#qTsyl+f#Eo0iy#^>T{EDz7r&h1TuXR;yQaV=< zDQBI&K#eS}WTuA;GlI9K3*1xO&YVS!%oX5E?I)s-k_e>RHloEa-#aG{&G^LsH)R!AG!<-2hAS!&*K$jyorkt4>bH%1T zDZ~7zd6-Ta(!dmYk7ur^n|8T8 z4U9Z4vk8F*j)@uuRcxv=gR%pjX@H(Vl?@WB+$9E){RVBP^@YB`Lgxo^IB3; z!mcowm6=KxFSlmr5ubdLwt6iFr4{zfpet+GiB0)o^DrHo=;7tTm*){@V1Z59(_rSx zc`Q1Q=;#!qm@PSrD@_-CXO;N+~9!%WR9={n9HFukjY`)Ly8 zM>}Va_n7J7ttw8d*w0J~JBeuhDzps&iv7jP8Kq&__-BJCtb(-ghM7!p;P8R8Ncce0 z6Cao)wttklxZFR(@4cq5H$6_SWcc*q%}>~Uq=3t zsm%BH84!n9g3+RCh<`50Iuvps2ht{huL zVZOqQF6$mWv_ppL#G-8OY~0YBoy<9@b`f}Vq^#6s9b#sEfgG#kskGNWA&(L+9V_{; zI)UOmSY0KMgk$WNV~4EGpkLTam5nm`6zWd>c=#V2>(F+Xe`rnQFo;bmU4nRVps zS*JRQ4`@fk8zshxxcoE#<5nLJl$9x z;~Y_K^-BCgbEwF`C)5}oRiytkr}AUwF*>=YhqultO$`--I3AT1l&ZTpHBzaGg6`IK zx-2#H7?o8&?NzVDqf-tSr>+<_RfPV`ri?y@>f`G3j+AAaw!A87J$|8yZF^lt=rPU+ zjo4&W-(?x0$2dbwTfG*W94cm&^=nTkI2zzbgfrEUvLf_n24xMVV>Y|=NYq&#c6lmk zQsPllSWS=DSrJ^RCpE>uAcMs@QYz|lPc4HuVKZ&@N>d3AAd>-=j=Pqzd*)Q$e&D2A zC+-zhTAoU3KWHAS>2YPxEK`Z|YEzm*Nn2B#BIp-zDkHB~;uHh*%~;o34hy5z`~cHx zW&2g+j+Ur8a-y2$d<`uMhHUnD%62ep(ufV=14$)5u;~;&(Bg~_nmo&DBW&%o%+@iR zbA7C2teQ!CeL*-mL*co}6>B(Fk}B0Ii;^jinh5*Vx7OEI$rv=FJw};>r$%dnpA-{P z&suX6kl3j}Qsc{$@Vtr15ACR>i%qK)Zz_v9CsvZ4I1Mc53CaJKfm<=JBuJiEL0ebb zxLwXGId+Z}w8c&vt+Ap~D@~ch$IcltR`vp?6(Y+2N+>B))U;YLh|0{-Ii5}DI@U5F zWrg7E#FUO$%Z+SS(&{X8IEylE^h(TeRk%`$R+3etNkr>w+C@lwHuLUCL@G?pBA+zv z^O(&oJ=Rjr(Zy)3ILVZfv*@8dYM%5_)AD#IZW~=mLba}H*Nat-;j^pybWoyUUU{K6 zQg&W@wsoiEr;ZPBG<~cn0-07^4%vzq)@RdN+2A%KK1Stvw~g5cA64nW7h>}j_;m%b zKPkQZXpdaU*{&LuG)&pRP#!b;6i-79^OMv*%owfvnbNb8)u<~H*JpOzv1V~4f6j6z z%F{Y^S*Pi$2~yw=>Z(pRoUCE<6^^y|`iV{XVIMVwZb-Sx5wO4};zO`DnI={QD&?0? zY|2b=q0`BXbMhQGoq46XD1XVO{P@1(u4vi(*@ouNvLPrfpTBHZqmdP zL%~&EfTek)UVv===#f$i3kq5mBP{}lyr+meF1kYOpK{LINnpDigbt<5et!is{o>cZloIh{2U^2s4Hry>c z9*i9BRrIBu7Ke&mw3M<`mzjC(4Jn624UNh>y%(g>sUCjP!RCHlZs;+}lRU{10@TJh zMRVmTZw8F#Dbe;>v{PIY*$%qm&^#-qtcOR2=_h5y&}GdO<%dS36i%Q`C5qYb;C97E zXG;ywg}9D0EumQ~70OGV=T*iBdyzg_-kZYUfvLkWP}|G0nmL(gOXJ4<+^$3(UseyY z4Ydrb%mSTUpj>w7 zC}1t?qiwjXOlu62B^IwG$~cCt%S=S?&Py4-i2ib6A^fS_UB@u4Qb>YuZnwsa+fS=RS z>i7m}vkjJKujgA%kgvoy5HAy{z+fsXcEqmyu+c<*X(2N0U>B{E!7}8GPB+cgr7xla zP)>&d0&Id7c(9xrs;t3I zQ!C0~Jd@N{tHyiEbJg=IC%o61T2!#w@+!QrK+*HOS{Sp8F~h5hf^{3Nn38B!EO&e& zns{E7wbq$eIc?>mOwIje>5O&kTdtHYCrBuSPqvg8oNjHxC(W?KC!z_daZwGrfQEaTWrt6)CMy-4 zSW?#A@`SR^zq8QmcveM{&)z>IC?fyS%ECoU1P#g92^aOIb{e#4v{-ASve;-6L!&Y6M&sp;dVU+Nz|v@# zuF-}YaS9)r(l>zSgSLx3qx^4=b9f)lEsOnMJLZ7i%>it<`#F zt(L%RH5aPYT&PwOt`4mhUu(7aTFU_&yi{4xs`I^7UbGs%ZZ&+}YK**9rgS>MP6ybj zlcH0=W5)@QH#ePROdUGSee5)^veN-}I>1f`*y#W}9apEr>2wsGrml3F6VYi1q0>=x zI*Lw5(TR*5Ivq~0=V|n+oqFAW_qzS=m4m%aXHsY6q;qFd(VA4WCK0W}q@p$HQ5KUj zZc@fg%AH9&KWXPD?fj&jpS1IncAgJ6#;oL1hQkNdKa=X8NtDcCQYAB~l9^P=OsZri zj^&{p4Yf@gYMV5kH)*ktNsE0b<5X}fe0=y2K7I4>!vh+9 z^ANtgdVK$c7ktFSEq#Ce%hS8Z_xSqi&#ynce)IJ3;bW*S@IHC836IiCUh(sHa>d-TS8e|U?}T!~O7o~2C~t82+M^dszWe(|uTajrb zE0JEf6oY#mWKqG$BN%w)xK5VayROs17gDlu?i`7-;(s=>UH z?`*h)qbWh@LpTDG#6&c&%p6Q1o`#LAj-ga8KgZ91cW5CjjVu6-sQpG3s7A!6k;SNy zwdnkvHCrPfy+*|5{9S}s49Z57LL*?LM(U5dtB6X&LUL$CJQ}e%8nHAQF*F)sd?PGx zgy(9uHo|VPUJs2hyb)I0>vxAPP(`?WzRGCC2vIxNUxjC~{D}1nK(Vob{>Z@=|L{m*~xuU(|-(ipQj99*k4DynS_Jm$~m4)@YLm#Lsi^loNPpd`m zuS``n^v_qKDolB%TK&pY(_MjX3d|MlF*S6raK7>=b;q!L)$!03?Iqu_N)h!JSWSZ?j7Zd4I@XI*I#88iRRQTs9e!r@$cA$Ui9}udmD!eig3B#^Afd6hho3RmTaqA zS>IY&ms-*Ptr#n<=<8MzFk9IHv|^%k;(Iw?nWvp-&Q7)<>TxjFgE}C#Us;oPtP{~5 zQ@;~?xD%b$iB9W8r*)#!IyHbrr*)#!I@W22PITJ&$~vPH-FCW)w?w@r3s*Q(m`mp? zuUP6*x$uhin4jmX^iOn~dT3T&(caSUSqG}4XXO>`t^A$nfKIHqPOP|2thnzEGo)Gl zMCv9wUxf-{p{w_(a)m2NMtizSZ)H}fLl*>mV*_H;6P+*M{%Csuzav#FEW)XQw@ z+0sAsGK+edMW?IS3%%?J)d5zy9x8vossEidr}){>Uh*Bk-}U|P*dEJ|x(yeu=-<+F zEJx~XTzN%%n|=p6vz(eM+RNTwdLH*#Tb{0B35sjtyw-ZoJ~{ zYugd2lO3#jZ_V}4%TBhJ9c(X=(_Z`?y}CGLhuX^y^?ViT^3L?o%i$WmIR1Olb-mbQ zy?E4?uhMUEOZ1}ada(e`S6(A}3AgmJruU+ydhtEX6@jpu?4}cnyo`_A4t*iGiTK-!6~$I4nmI4iH{-=^Pz zF4^B@+LLJ{4!hy9E85%jd-OB;{fhQ@(b2${#=ZQNrprOYVHyoPUqu~>I@chXzX}~$ zy&nc~R}7-w2XR*n>YG-tw5at#OyWV*`XHw2z#GTIAmPkG)b=2b#X;2cAjah&YI=~Z zmcPw6+Ee<$5sRZ+3p) z&>oAA#xKnk?G^uy{?`7^;wE8Hw3mFx?>ByzRYIez+poMTNRalR!P+ZbGwtyXU1Px- z3SN0ddu)|$zw&Y-0cW(w>VNl@t-Hf0>R=S>ZWQZo6zgsj>u!|kKT4cxl<7Z;RX6hV zKa674jWYd5vFb+g8;xSMjWYd5vC>AF{+PBQyfR84U=$;56i50fM%pNW=248aQ9?nZ zO!rBGKod{*gT~^obiG1*%tlEKKzqseoBDUw(wb3Vu4u3LceKxHVC5C|Nj4@_E>#tGRwv*#=Ev1 zwsJIQX5otVRy_xPu=<8t3h_<-dcMlEkX2O^b5>r_jiuj$eMFxt_Sn|rv6>jnD`>f=ay^{Cb9ZL3(PqhTz3_TCKhM;kWsAQ4 z%CmUp#SZQ9thx9qZhy^0ojJi4nW;jDi?7lz3AWCBMSIe}wO7eioMlUAt_Sn|W|sWL zS+;x^UJtV@y0a|0%U9u-Y$Y{c*Idz_$cbz*=dD)>ILxxxU+H@A?a2I)pt7EmzVeFp zWW18NGE1UJ{VMbnBSlWMKj_K!=c}|Y!C_4EkmH~^(dR2GTRpg0&xBriJ)EE8MNf|` z_E%QQdRFej^>Dr~-IqmFPjQ`P5z*s9E7t=b^7##_S4exOt4uph9~BRwo&&gWJ@Bc0 z-ymI_+tal1qhPv?u)%n_Nr# zZM+`1P#^jwHr@IwYkx(12-pMdN&ik)kq=Qj3IVZKz(?6g#s`)V{eU>7xf8Ia{C0fc z=F1;g10geBU%?;HvbhtmtNaYaKV&K3JC6q+Sg(L?KZu?J@>bt<{-Eu!E<($ql<+}+F6!ola^Ca-Ew5@vB|}Uu z{7U=0^dYoto&kd49?J!xAV6_m{|<27fI57$!$+dr0pSY)N+1zeu@T7H#77b;BwPXu zAs^=(fjb;PWkoi82mH>%`?mq4gT7Ewa|~ws!|NX(J_f+i$Hz|}-aLE^ZzhpG+)a5C_$uaRUXZh?GwfZJdNCvrI}k z`AN&*qLZ?T`7U6dKD~cJ8hSELN`#EZ`PuvTk56}h{Pg|P-+pG$|dzejwPuHie{3VovQp&w{>2-jEqx9~l*52qYG8$OT2zubKWtlFOfaXxz! z;AMAzy!+R0ejEP%r$0YE{qkS$?jGLX{`2e@5;s=Xb-ps8za z@8>#$CJ-oQQXnJ|JP-)XBc=rc2d3gmObLVvgbf4)6X`eMJML$hR%;XQA_i%@5F%oV zGAUdGgYYhDAMXu)3GeL!W2?;i2yXrI;ql)f(jRXh-u(3LmyZv`F}->B^zi1-?;n49 z{PAzMKYjeA&++S+PN<+1F6URA`U_JNUI8yNfdXJk-2foWN*O_&xK6f;9UUx%S!D%vN;N2;za2;nzdg+a~8 zUws7kbK>wZsLPXZP z+aXZ89d5%W7(n=2Z1$g*(*HQdQWMjXOCiLxeD(V2HH>zY9Ko&~yI{sBhY}<|KKu^L z-QB-_eE9vRr=Q-v51abm|MKvjH*??eF8=QS`Jeym=KZIie&YY!WB2@jLAO492sKK$ z;K)bp0>60o@t2=o{|!~T{`3xp-3_*J4^#$3n+{F__D{$jPm7_10x0yV!`;`|3I5Z= z`(OQ^pa1jW?su<0{N=are|SXW;p4+wY7=8khZ~$~I^6JP*=6^T?y&2H(4!s(uhV6BkJ&y9A-%G{$kczO>= zHE2U~4`S=?(Xn{uxgkUh%)LGUa?L%8Q=5B~kD1=X#IWN)v6K+pi=V^iDfrIPd!PZf z|Mp&pw8Zzo^C1Lp%)K!vspMXV<KiIxE9G*M%xI<{lM; zF!#m)sy6osv}W#6fY#ib{5X(8>i9d-IiBfnkwfR6gICM-Wg=gx`EBp}JW+mud2S5l zV$yrqHv9L|nbhXF&W{5k?%NweoZtS|k7K6nAM+fgzo++(RKz#EH_yJ$NAfYJ&mA+g z$62bbf0(|G21iOxH0@<*4^i{&dD>&Pg}_GA9+bKpM|a=5dEVVa9lPIBZnA05(;g)Y z9FL%4U7t}x(eVgn4V+%{#6iwHrX6>2pZla=&dmPb;i?j(({5 zV)Zyy#}GqE-_afe^x51axUso6`>~<2M&`Fpk9R0N>G}r-Te(8X2D^rKSW!Z>DeViG z*o;RHutCws=1fpB{0P99Vkob@4-B=@4!;w zXaKCQe~!u`q_vpCoX zj`ky+7n`;R54F<=6P1WepPRgWg+dozhL9`n^bpK!N0*txp~*V{^>_AUhx{Qo4y53@ zcOb3MzhksEQioz1A+(*mw?l4}lgXK~g_GwneM6ixxd#(7MA6MX48+|VLPmypj==cl z-t75?WE0z7P&u|e6!-{PG)a5?eUo{Pz~|;UDhp!nQAV=4M-a929ttbF_hQ|0{lj+D zKSzZQOncCjb{wdz=i9?J%s$srahS9{Od~trp#DOFoOzCl7?^vWAE@8!)^1Qa#Ma~A z1|4D7OB6bX=OlfuLkS6IpY~Y1-FUm!+1Xh2Ltbk9Ufdz{u(>zcy+Qb;=LhzvR_F9R zm7`AE1KaF8>R}@JdzAQSe(UCMpo<+Fb~sS@>DX|OAgpnF_j5-DwBvg)ipNm&C%zY+ z3kf0VJwPO#Y+#M@_d-}J`EA!jm6-nF9{zF9jltUzzZcI-uSQJ^*C0__>7?dB-D|-i|IXr5t}D&hELH3T4G(>w3`2 zjcq1)vUv_}B};=N6_ZJyL!PaBZl1l4J%;do`02?Pglb|`#x%Kyw|d!yd&AKMTVmgy zxBpP~#oAo3yeB8Sm|7uU-Snk(cIN=Gx3nMbd$&J=)^&3MrDfc{3}t5=FR|lvvNpi` zX5=2F>XEWy``nCfKLc-xvsqyRTe-(dL70e?1}znXH}|~#f|=^}Ou?7x`iD)Oqcf(F znS!ON9Yb8lZlWf5&Xw>riLI z>MLxC-8{!ToWBHtq72W$I7b%{+TZiOG`QCgdonaV_RbbX?GLwy7*N2&zhiW|eHceS zw@^L7$-(ID2-Fzya|>G+_g>&g-94{z_NXLZdhh7=jW9&Le;jpKLd6#ITPhQ6?m^kP z=a8P|?ok#0@&jQZ&!ddpJ|5wCwC_FA;R;Fr5R`U)end^Z-he%BX*vQ-!2l_tvBJ!S=$~e?O1!Q!|u}A#VGmVc!cUOZqA@mj@xUXdWqA|h^9DSDWdV# zmkW0%l}Jj*i!hj_eF)uI*$7)sD;toh`HnwXIwWqyI!sBH72Um-050!x(4N!&F-}A9q>_ z;{~PsJc2rPd_x5>*T0EM1;@043*N`Fkht#W5d_-x50ll67hw(mUaUw~u0UwtUdUMv z-8=gp;6m~ALx|qBhtRB(Q*4u6doz_LOy2=B(a{e$SI4)R&XY2~^)YL>g8X=4p4#zJ zZoeJxarAQm?h-d%z?WSAj&zP!(mzCJ+?+<`3Fp(ts^#n)wB~dPs#CZ*h$YmGhR(L@CA?v7?S}u^=?z2({CH83-O3B9P*}SO7JtaV4B~R0 zZ`cJmTLs}Vr(ZB-JWYE97;Jkm39UYuy779Gz~rqRuX z5xurNLTJqO55|<^B@~-$59MdvJjVoaeL)!$*WNrhI}Bb{$2T0xWyc%VbE{9`1fhdR zQ+Y-`3O8QpV#i<9J#gbdkpah}BVkt4cR(cV*sybPe1i+#y%%XvcCLmj57%duvvB!C z*u^{g!DHm~!4Y0d%MVy3P7h&c>he4g-E!;s5iUX39?UB%Lnxu))(V6YoU9>w?({Co zZaDi2RCclpiFEr9{L;k{kw)g?IGDYjNAT9$IgORp>3c+b+1^~6-goUGRmkcR zh@X`MXkvIX%v?QYeCDv40`5AI$s_9RJ08J>?0AGgv44*0Hk$UR0(5#0X=$!KxCQKd zJ0iH_pQ96VO?zGs!Oib^gyPkXrce>?y)a+=b5zhJeJ`ew>mNcVj;3(Lx%NgMvxfJ| z%SPC2SRRGVsl5lC?Vt1hV(h^DT!5kD+6xA>eFy3;y62$B{d0bOgT-(A9Q3aBJ-{IY ztz+LiXJir!zkdz^dH36lOk(|Tv_c-JzZVcDf#qjA2UPYliAm`C0uq?MKtKB!GwO_Z zosF=SX)mMzIa?lHLaU4MoQqB19wuu#4&0-|tm3iZ9y~hkIja1gKG!%siF6+rV)nPt z*=8NYb8wQ`=KxV~{lmK8`ht=RX01i)k<%q19m%dKxHpH=*6BD9ny~Kx&cUvEJ+fY{ z{~7n39fo@@_6e=qSRH}q+!r1YO;G;k$NnfB>A67vx#G=SC`kW8N{_^|FWQ zF?c6K-I=&AVV$utO=J_gJv%^3&JT>pliS1Mp357-Z=L@c&tWl3`-11dOm`0| z!QE?}48fys?R&IGr+~!c4H*fJrVW1V-|KuH_$^Y>ZC@JaBg6S^$hdIN!2#&*IbRyy zL6x~opWWUC?||^y_F5=KcaM(1OxwdP*B6+MZfx+E*tG&A2o=K8_K-mC`T~30Kj&o^ zt}i!#5n^_0BlfU%?+nMa%biARSb=T-kU(Vk3q#cD$sqT(FW8j%^%pKOyI;k7ov#n~ zs77r{E94lu{=x6<=!_gg%S%LSojwg=7e{C4Vry?81I_vm5d3gC?^vae)|ZQWv(wK= z2X;CKhj8226C9f^=LGK^t?vQ%Tuuz`Ip06-QT6PUrkEa*jHRB$#lkIPDO1z~3w50XRr zm7NR7K6SbYM`zo89ty9y+!+K?T@DNGxg0s%gMn{p0JnveNx-rkFN1sB>SDaY=1bun z-nPXN-p(FEhOp-)MAynQB+}-=<77qz6YMy!H#Ia3uvEJ)Ku@~dfPhSMG6}8W_Abbp zb9)2q8m%7=iKZ?_g?oNa0`HoaapaBIH3}gIXM?m5AxA5yD@PY3qPRH&U2NU~TDd)9 zpo^7L1dk9wPic?eI($la&dNQ`uXnkj=&-|R6Kukb17h#w)aUg<3R>&i#3BfXUD{{7 z!^QaU932*)=s%b*&OX3S!}_W5TRPy={1yq1_Pxk2arfY=GBibdRL?qX54za#9NSB) zcLVg_@D~mRyx8`|`))u#m-~i$nK=#Tm+doB(A>HZLSB}az|y*XBc5|I9@60~t$?q! za)q%u93+_G*XbbSR{sGb>udq6$TpsW_8iUu_gp>$`r>@AxaZeUWEVTzHeh(|8iiTu z)^i*O?&*gZq@5q|u329xB6ohD5>%q&5mF``t>8y@as|Qn?}gGavW9F?>o_c*B4|JxqGhOL)aNOUsV9^nD!u& z&NmYDr2Q?-4Y1C>7x|9XmI7+Rtx>RY+`5X8u%D}buK|cyX0F1lGvmN>UMGgsHzx-n z3EYkYa0n-VhzGcPaJM_2qnMVH$;{pbVR8Q)5{O*?5Q=efACg>cpOO6LXfS#|CZx)( zJ+P#l4*)Jk{~XK%H(u=hoE(H?HP=7Xq_Ou9K6kW7N}C%m)>SuNqy{)z!9;Su^|4+I z%;m}8p2IWYp35=BJ(p*RdoF(n#yuTekgS);O0#wj1QK2zOBXDmZX5_|I$9yj?r4vK z_HGWM_Jrfx(aRs4++Nqg&t-WToba|UaQ@qTLX=S&og4&5we1U@b2dnDK)d&1-Li5J z9FML&n9p_&Vi)ghBsdyuToPVy@0WsVck?Ycl3ZV4Hd$T<_r2vMHoK0_*r2;u4ARW~ z*sz(jJjZiRhG20y9SfPvJm+%IAiHz`ULw0;!{F!~3V)=si}iyJQHy^Y)(Y#l#kSGU z4{+S(Lcn;*@F*A!>3i{9hDWH0;CO`nn;%DpM;>F0chEV7@z_FS+vaNE9wI8Xf3RAe zJVS__Z1gUlE0D#lTi}|_qeVc|$3%cWa(hWsdGhTcR_^8uV%u&U*q1q)LNuIABE`#% zZA4O_r3>OSj+fXX`uD;KWq*tA`Fk+F{c|=a5Ed&EINWnC_XE$lTpZl<{+Ax*1zcaS zHaZ#r58>~*{5r7Q)n>sx7gNVQ{NIiPAz}XxmtWGu4eZtrWP5wL@;R>fEhuB&i%bJ& z|6v#4Y;Tx^b{~)Sysy3o%-_BPo?Op!Bp=x|4~Sc9vtlaH`333x#a`0MJ(5^_dvrLZ z`R!nBTj)P0L(p|DCn31LobMGdAiq{%Pi*BmxavJ!j&9Em50BHQp+tZk?{H72uP0*z zX4(0IfH-q&e85UuxkoCF+rz@k;Pz#(Y~A_`Y_qck;L>vZ4H#&%_CT#2ogE98o6~i` zF*{uci{I^|U`aU{LP*5<9r2v=1r6BiI=UdtY3C}UGj6UTYcBH+Y-sF!gS5GKV1H@( zi|w1EJ+=W(Pa=fjd~-IxeW(?8&6+#Uj!g&Qv@@8VWKQ90VfU1!&x zFpsPZ!8o|LbPo4ypK;H{opH~__k(-a#vI`89Blk3+_QcV+;e%QDC*+sZ{Qv_VJZEB z>(KH8_q=`yd4fg`;4MKg-?kSFyYwD@>3mDL=X{&N6=Y=`m0o=AZ>TwCbQ7NQdE5o7#_gwA=?g6N7#{pI6?|GbI7@E=TFld~Q7Wdp<4fi~D6LzeXHMlliJP-F= zj5N4Ftvm;SarMR^YM#U^RJOU^e>0{BR8nUjDpLr{`~Of zFCRbsd~?@*Hh=!>FZ);X=dS`3VV=ME;`8bA=Cl6Q@WmJH=l7v>^2evwAD*bZZzyGh P^1lD+KmGdmUmpHHuL!M1 delta 137104 zcmZU)V{oQjm%klcv2EM7ZQHi(T(RwrI!?z{$F|k6ZKH$tzUTkU%v&|zcGbCRe?0fG zj`dqhg@j36XwVeO;*tz3jGW2PBEWEU1-ngV zU&BC+zlEj%v~j(~)`C5#0N!9@8*krBdf#jMmxd-qOee7$UOb2z2y1hjzd!<1=Z%|% z-#1>0FAyoKd8Sa&8a<5(jk)gzdRg@}bi}_7p#~Mg@G<>lG%I~xb#%heW2s}W&%gdU z8xcgF7y1&PrZU12!9&3+*x4fa*7{4w{|2$b1;vX~GcJkiV;%hwsHMcEaeb0GyP%79 z%0Y0gHZ6o}Nc&n*(g|Yqo(*JoY$)Qo!qWt;ZSwE_r4e*N?}*g`>zoH+xJ28>IeE5a zMpxphh~KP-{~Rw zkJIl;+kbr6KDVYhISKsmz6!?WvO^omE9))&YIu1#^=)|0_$Ams6Y?~mrCXg({=BUT zefmPDtQWM&GWwli07CnVToa?n@C=IY%GPm62Jf?QY*}3Arxp(z#W(0nAct~lKNubn zI}Z!2g`>HXsVyul2Qf48zXyJPCV2}-D|c&R&eVApGT@bgoYNsEYR^mEoDV3Se>8fq zB)DfA-=9s(Rbj;b{6-{V?Hg0q@g1aC2~{Rc8YM6}Hca@ajBMJT^S|2kfa~Mn(#5e}NC0|HGo&M>_nO>fsTc#PSZ zz;E~C&!ga<9o>&sU#EN1>zIk4%kZERAX zjuC2M0b(ayEzSGwBm(2tnp+3Oy^_+FQ))-Mv&N z8jYD0&fiy9upp%3b08QPHkeTb-eBr`=S}qN<`Wl0Cxy^7t&?7H0$(-Y0zu^=>VbQ% zw9&bu&qFSsMRYaI4d@Z#Y4A12vRRBoW9yDHiiaBS&$x-4D2k zLQr25^&s|rf~c^kG3Ye3p$SdowKYP2zn*ImrbOdWkss`=QFKWWUK*Ym$&i3OPicP= z$FB%Dd_nJw-GMuC_smp9XY+! zHx$|kL5jhlPRaxBCia*e=hjvKXa1@H^%9EzRDnD>jn6tNTzDm<`dgZ+ui;{?+7-1 zcK11n55yl}S6gOJ+Kw9?(?5HXqXTV#}Hg@%?_HQq9 zY^v%_1-XHS$Jgk#rbs*bl@P89SihjyOOsSOVT3D%ZhX*KlcnC~Zxag=Ua6OHI`8jC z$hF9@veXc(ZW7A=1$JDE>?G{wAWfvDNL92^jfIMUl`<>VHshWPv67RV4<_dtpX0OT}D5yo#5pG{nn_(?F<<<>`5!aL+IZnN~(gL*}7yO8PV^2*Gt z_a(ExRof>vfOkvXwg4oui9wFz;n$bX%Kb~Pt;vcT_2{d2f$jS!=B;a4L5`d$SuQn&g1DN>|!L6>yL5si=bH+Ze#H3sQt1hr>#IqubDO6A({P$tQC zVm{i@m@5few=&xE75=}q`Uh<>Y-Mz2#}}NCw!pWED5wv3>+-9d86X7yzGoQd9^`39 z&B5q9f%pM(fNl6CpQiE$Yd+u>1qWn7x#b$RdtrD1Kj3D5)_UcX<{1p)D$T;=jDL`{ zhkD;zTQ0bhYO7=OQ*o|KCSSFF6stx~dds5D<1+Kb z%Kru}xzrO|ng+=(!P zfcp!J2E69i4>2>C8d{ebN#P2FJgUDl9sASxQc675uky358azbm79wlt zeoiq^b^w7}%U_n12~KdS-{RF>{8b+iD7lZR;>h3Hg@^Ywnw6d?4xRj0Hmb`v{TZS+ z87!>`f*%S_8$`gHd9uA+7EzpqGV`e6CZ9q51NfG4lI(o$5BzccX8=tzLT&dp>Z~7= zsM_`e$ICM2tT1)>z={IT8u{mopbSdvn1;n=$kV93UxERs zSd1%3h(V7_oDiap3k+l93?L#aVrHa7h_28)*V^7|HSBg>yZl<#KRQ=$lZZd&eBl6D z0$ShPRoJkT>~691x^Kwv_L^3b@N!;ySPC%_h@Mgs>I?T|64Bq7#FF^}sVyA%Mrtg} zv|M%NMvims{Z=(Xm)Q=Phe`CwhL4;BJE3G1rB> zalCj!POh{G|TV)8=F2t2owp>D1 zo0Hcj5)xq2XZc;+`5|<-3DCycc2rp#->hlUT$_dS*QnT^q-@+YR$elH8@ip%t1R-$ za~GC{rEuPxu<16k&w%n7m0-$q9xew1=Q`XX_(IHuoY(xtnOTLUO`=@QZ`X5uDDvMU zSu>qhhIzVWIVCNrT>5~k-`p_CgByE<2SD3EsC<@jrhmEE&E3@^bsP*1lk-1p%*w^h z{Xf9Wl^H|^N}tM(VgSmWNuv%**wl!EPL!#01whVBBm*T#ePX5t<;hgR2a`{=XW^mZ z`OhWn|I6GgEdK|(Su#n`!O4MJ+T)JoT=3m5TBrC0cH*)W8laM(-R)36a;P9(pDUk#@xMCw59zi5`0rQ|x;Ph8)q#F%0k6Qj;i`w;^XO#9 znh~;rowi=j(Gvn(0?hnJeq-&|H?OBXFj!@Q@3%>C`AI@TW5Y5i?l7VN?OV`<$ybnw z?bBG#JxM=8$dA+dOQ|14K5=njXadfYf>T0JN#5g1v;0nFK46h3*Q+N=ouemPizB9d zWIFK7!WIpfv59~{Lwq1OY0WjEGklPAnFq2|7Sy5`J~$Y6h=?S72A&Tt(Jjc%Afx~U z=BvwzuXQ_q@p$hih35uBKp`vkLCXSqv<19H37!4U8k|==?ai ziVC)2p9PlmO+AuX_D3^FNNq=>fd7zX+8YRcxQ4|CbJ`vfUgXFIv(WE0*hL7{y*Z}~nsUcT=0Mu$TkY29c=#LW2rRQv$SBA) z+nX&Z4t8Wnj}FV=b7MN3z|Y-9>cxcQTf^oUOmw=>A<@x_@}J(J=hU?1(F67z;U0wF<^Sx208p>WDRh4Iwdkox;`)Rm-_xCWSM*Q$GX@<*$PEMe9 zVML8)s{uydD2!bq3d%VzqqgUodn7VH*Ux7ch&kB9mD0yS-S~<(IfH(<8nU^q=z4Ll(#X9CpQk@7-LhA2w!h5TSZQVRFP(@WFm@ z*@jhH&OB3_H;v_@jt_Lcx!Y%u<+|J1c$Q>pZ2)$lhN}|LjDgY8PUO+tl&N`W z=sg4%u3bv%4mey!d_y4*j5+WLbgUseI0T5SDRV4Bmu?%)sCg7xa3@`n;im9OaDSIM4s++2RRI)%+i6)Jr`e&|LGxQJM^1E|ovH0Y% zVw_=l0$%Z^)mq9ot z?rgXQMGsF^&k*svK5c12WO6Na&Cw~0E1cr*hI!a)O>vnl|DjL@LHZ9apWvDsta%`a zd=4E=`}^;Dm{^7)?MoA@r5|3@I}Ef4B5HZz4eJv6=5%s2l5Ui8Jdh4+uEFUh7cIjZ z%v$B`z64cgHnrk*isFmq^5$++QVkm6e@?X*kwq6eH0Mw7Cx7~P}rMG}|u!((p)E@HoX#%UY1{bdAP>ieGAbLcUvdVEt%(*~U~okFpP zsFzsfFW4)6a52e7hbQ({fd+vei?=@~Gxs(MPF!%0hvOC-5q)tpmjkr3@27z-?jMmk zw$8Q77q^MPy3Cue4-Z1ZZ-O3>(xxrrh`%ovN|`T-u?qtZT~QwDjt7ZA#GNbGB-_{5 zmz`SIwe3TV+6~uqu9u(f4(GHxZD+JC-x8MtznM%UY)~T{H#WlL08{-x?ysRPpO06B z@RM(;;slMi&R0ozFvdPV4~L|5Q)7(H~I*aYn&-0$+xRav(w`ZXD}uT>tR&?8;NEgy{=9%t z%x(4zEM7?57C!dR?t&|il9sP|jYTU9ooBd(_0_dTKuzu&2$lY;FvOOym+$`$iyM+W z4ktR?yR(psXMYLAq%9bBLb%-C8-!5^A1v$M<4=wl#RapcNH~7%Z2v3Z48dIKru~Hy z;kk)03^kF z1`(^3qKOv7NvlCDpl5!_XT?ug%~?qQW+8D)lMW97KN4&sR?L1UhH0aK9ZVFznu&*2 zQpr7&F+L(sxpzi_6dX<8Z#~ne!MW&Qf#?7`?!ppdN3#US2FLQF%re(X-VLpyxcuz~ zq*2dUMENm@EU)F9HVSvzJh>!Hg$qdfJ=uLljvpDU!99USIoLC{!A5{1Y@DTH@ypz< z>o={ws5dk%OuhN9>aD|xxzGevNpee4@ftZuse6!#5HlZUSBIQnn$s?HALeU8@>KKa zy8Uw5IiRpP+f@iNQ2geEb4?EZ$dQc)xOar{F;#Ztq0VkN%`Lv*^7k}VWJzRqjmNaz z9eIg;n{*OM+}3_X8@j;60sf~Ir^Y)np${Qb`|`rx69JqU`HM?`)affW;?On{bP|hB zcU(j%ALX$ebsWzw)0a>65hcUP3qBEH$&4v`&=tL82f*b^o!)$41Upo;GKFdg_%4fV zLX)mGXJV}IMQ;w^RD#}?O`Yi;-q7j#m1wp5Z9LDs1rls3D8H(8km`gdgg6+YXKO>@ zc&L70myi^*pyFZ9%8izWjwHSpsSeX@ppdi&*Kx!+{*xe7JgPbcmKanhgC1x>YV}pv zT0+V?@(VijCGGVT3L!jcP_jr4_#_td*P>U~?M7u36WJ_jf$h91Pt~G8DId{5YhtA7 z%Ekn&KxSQ`$5RG2^90a=HuFK`CY!BC6~3)$>sTGR=SJt2YcY8j*WeY;A~?yU%6d98 zx^K08WGp$b-%JPsLlX5>9L$wBzA2s>~#Kj*cQ}rHa zvnNh`QmmvilCh3L5_dwm^v0d$*mRcS+3;zm!e}ZmRB1ib{^dxiSzyUuXqgpl@P9z{7DMoSFevEIs zuM8V?<80nkNb-D2&9=S`l+mGGjjq=jC)iiUvPd(ND)DlCLhg06$d&ehgG23lbimTj z>cs4c$8(3x$6uL8w0Utw%bmc({EYI;xL1(0B&hYAI0@N+qcO_SWIK9TdjD*YNvM=! z(DXzExtY(fI<*RM@s3SpHr)fhYUCegrMhc>s3(l0KE5Vj=E^Go9nVYIBefW-LnGST zPc-bn;3i>JZ8N_6Y>~}J{C^J^C&O9LN8^QXv&;zisOX@C+_;k}8)@iDTC=$T-q?L5 zlGT%q8YpSG?wfuwx));w(1YY>9O|_^cn2vb#%g$H{y7}z_y8%XHEKQB)R~gan<{38 z!r)jfc06`DYlx@?avfnQnhLObKKB=kjNE+Qxw%c#|JH*#ez0Vt^VTVby1O@C#%AMi zq!VyDV{%V8sxniWbr{d_q3?ihp=MH|fGAlop9jpqnm5TaoTSSWH(6?4bDA0oIVJXx zW;rj1{IWZ@Lie4Mu*CLg(eN_8FXD9Tz4FdkSQj01nldH=s<5OzN7@sYic8?Ax8&+Z z(@o~6;jU@r&2KMlRKfuun6tg0{Fe0l*ae8$^_4Scx^kT{CMmWj(&WFVzF)+^_XqJ$ zet>Q^*{tbxUX_KcusJ#Zxlm%+a4SE1C*e3%UA{Tp;iA23GNtRpDp>dd2cuZ`utHWf zaI)z~Vzev(6ubJfz7kji%y$Md%fg)d$-OSyKg--kS z*3VPvLAFHfSA9x@vpCbv3QiU7^Fr4>jIOo8>!I@Hw)i!C@|T!X!?61$9@`uFyqEYh z%!9+$6~)jvDY`4yk5Kfjr3ndAGnzqGgX)5TJ%z?m;3Bn6nWp1vLP~WOAR=_W->dR( z6)kfaPFVRsB}ww34nI@hpn%kJ&qUQ6tp+0#8FfgRA%|yzj`hTO1XqA2_hE2S+qGhm zyF01UMBwjL!aH+F@al?pG;-h5bONzF*{BcH4pzItar1^fY#H6Q0W+12E?eHNK;rrp=4le9={Tepy=ul{ggR_um_=o$z_gAYUJKJ%fISL_5vy5+#|37#jF8*N zvL3Ol*XNP+%G$TOuu!a?YAd1M$BtpNL}0#NCv<5XQw7v^TInURZ`{440Qj0q<9J=g z@(JQyw4mmBrK$M-UC-3=J80R@{$-}!m}jB7K9VXQCi0i{CIY$4Y%6H28ZXR9CdfY* zz_5vBaw;*$U+t-U$boE~vG0?Momp=X2Bq261Lj7?1cdf%N<3W&&+uCDx)o>7rSnnz zwr!pC>PsutKjhZv+@GK9^PH?xhuWHu@!#vr)3yCB)UF8_-Tt&#`ktoJ9OThuLh)dF zV5QJMXsIUI?anqY2zUm9+cz%ob)yUV08#m2wosNCSjIWFii=lT2?P8J@`mNtjXYY8 z{EKDDd>XcAEbpG2AK*n`n^9LkkNlKOb0c;(Gl?L1KKy@_d8jWk&n~v}vKkT4pG`6i z8o4amhvyg{wOb4ER3q-V^Z-Av@n?vwV1DE|NuG%)^mr@P?YJzl9RYP3F zzr3XPgLOc^zYjMN!0rH?9t2y$X=Wy0_DNo9HpZ&IvkMeEA6QhQ-zSXA z-ZdH*z}v;uHlnXv55oL!!k(a#;?91I>z%r9?@nNs3`YkZ(;}~|*FoaXNFq)aXdeHM zPo^8w4#S~N?Yha%_70)NE83mmPuuPAd#f^s#_LJ;K?^X%ty-*5Im&j(I&>sppCOau z=OPRY(cUTAN=+a^OsdGHkx-z&UqDv?4f{$J@DUe|1-9%i40osd_GCFk`0U1Ur_=?k zRI7$;{vRe5h#rwaUWrX6p0}yJwdMxFni5!>;68tTwY~RxD_tr6Cgb{G(s%kSkA;kEheP=2He#~-uouAw z1_t^BJO!7zg0i1LK5^-Er!r6<;}>InugMJ+kGt)G-HAhGR}IL0IG$DezFwsF8t#RQ zN<}WRqI3Nf3PL=9pl;9Wey0eTiS+X=1^kgO_>}i*)BU@}`zr6!Mti-2=YSBBSs!@-Q22mVo zT!TRKEziFz9wS;BbH@JkA~9LzfDjG=G>v@9R!S7pPm$gs>%JUwg#hQ}VfXrhnh+|R zV|`KW8_u4VekBT{3?}S-pYU7g5S6kzo3Ms8E*_S;k9*n9sqkJl>uYl|VK}Ks%_ui1 zRm8GxWlb_J+%LowSdaeUkdC5{Pw?mH(nhGn=uvA>1C8wMg^yJeTe?0PP^+)E5W9ki z*Sty$ub+w7(SL&{KMg%;K|YL{4GYr>&jt9(X zvT`=St4})|p?q$wRg4JqE17V1OM12LUT#Rq9}b+-99io#8pzNV`jBpH8dgX3O#%)f ztf5pefp&IbmXTRTOgU;p+{0yaJ4|{JJ7+a%bC;8T`^^;n&w5rJ+Mpm{mawYH#B1Qr zk*{Ne2pK5)N1dS5x9E|gT_0s)E##7}jB+6X{HF{_5|uLhcywckgx^$(&o4_u<89D~ zgL%L7MAI$o5RT#VaImh~4P`F9)f5GdtxMPSUv`2*PKH0g0nXm@3p_oGEzR!6p+=p`bOJ6YLO3c zLzH*6S~nl|7DILulEafh$H2$g_sO3~qqN~>>JuFUPkWK%aIi>zskpU%0gJPNG4J$t z!C#a$+$7)Jst{Hv6(8H%B!SEKcDCZ}jN(WPNgIWUuT-3vwhZC;-8FC!T&mVHmYdy3 zuw6QjoQ475Wz+y_f?iUpnAQO&|qlJ&ib{#VqDEOJuX2I zYU$`<;K3%gy`OW*{5w~zU!$HGiGBquYrrJ;sUls)FE5Usz7E$vxrLgw%2lbATBo1F zr+3O*U`RNMa3-Y2uxuNaZc&kom0#fc@5cJKT=<5KZNfV6C9eHtlvTtX+Eno{dR9;m zqy4x-&ubuQy}faf5UJwEDq_h&=R1$&30~|R1JmRydzXzb1Z#i784$4=h+4q^XrF6; zK$>g61OB3KtwQA7J}DD#_c>IMiytZb8C`39#J9JbY$P8h4t}Gq^zI+d<{T_0XYMaV zUqFF)8gvJQB3v(;Vt*?;^G$mr7eq~wQw{GywJ$$tLqLD=Q%=3%0c72d$Pu+-qdWV; z;WS4EbS((JqROo9Ki{Hu;qE5r#mOMck*~1+q6XAR&#Sh;T9bWs?N#5kb>+bFZH31H zy-P2)uQkqu%P@@fzMDmd)b=O#!iGRm^Y7?hm_~sFg(&_pN~4;(f{R4;4$JJ0_@=vP z)v07N1sijPm5>T=S!uz7{Ifn1)43Wn->Ib%n<&>@RpDeHgDQwg&3VcZR^b}DVfTE* z!>N0BOXn{eu;)o5>X^QFO%GW;CZ<*|Gq-fyK`$mv@(5)xIZaW+9K(#2y)15WG2w6z zRzbjK=!EHN^rVC@l=;w2wI9WvPMBK*#nHnKv+W2IAAuvASz?X+P8}C*#v4><8c+}y zte4vkIM1k`Wuy7YWoE^zCF!jq&njlCkZS-WioC_erIdNNmGNS;L{HY%zImEi>9BfM z68rnzAB~(v7|;&+B1~iGdC`jA&*nCF{h~lNIO>qk3+hNuHF@df9~yr$owqHck8~n5 zH#Nv&QBh*zLZY2xs(b3FFirbU>IQ0QvX;B4S%TcII35WLh%9mBD9QE(8q>+PV?Pm( z1>lhcT3lV46bH%Yit<%c7wS~fhg8^$YQTDeR7P1v@42v4A6ZZjNaCT!EV4QdVp)Kl zkf@p#P7qg+IjGi9Z*kyZ?Jz!YY8up2ea@$Ee72ACeX>`r=Z& zK^%}8=`0s}$R5*ufk|FwhCu zR#(L%Dv$b+8ut-XapXl3V$3A;r_@0E)D8pzeTtmL)1ab1V<{? z%EWF?LOQi$L{g)+g;Nq?b6bK;8XtkX9gW`OIbD`ZM-kqSD;XGzD606Ns~-bW&pw>; z3_9iGE$U{o$_*%-*xi>D8?bg%<>l01A56GcvBXFEW`^FP0E zKDzf3vZU6Uo*3kx=uaw=1XNulxe-C-iMJ%2S!*e;;iUy=AHvcQ5YH^~wP<@$o^rrJ zN_E5d62mH}pJV%&P{Cc?!2J8bcAPPoXlR}&@w@O4DC=Sx~*DVa+53R5CPt;k=; zW4tUHRk1Ecx2ZB{y^j$gDbue}y6goD$>6~c`vB+>9FXX=8{BDXhUEeS>L4Za!oDhG z9;rs~y7G>GDXu{ap3xj_wLqM!U*+P)(96Xtb zklxg0r~R4{?~5*T;tK(e+T+Cq=TG3O8)Q^;dsS;w)A-iA{EoDnm*YeGnJ@kfxj=t* z<*B?j81r=+16l@foDoYldF$L){v0!J?xw;hviKX%b)~l^`m^|MVMhGGPf4Z4rmK?* zqd2xEyZlK)myOXO`8AdNl=ZKWV9MgUp3wX$Gk?8hnsRrbi`fkjeUo)jU|?}UnnwJ+ z3mye+7)l)W=a}Oe530cCxHRV{$i;4^rll%@+Ez+RSNF|$vfW1F7ndYaFMB4nzW%*w;b^*?<8YbKBklsR)k4b%XXz3rb#=FDiO<>UXGVoHLsazn%3nHk%9XTx?#Jc0ekj2Ferfv|@w3+ts2VEzQX|cdrQ|ID(c5(CXnq$u6L;2onfAs->bq>La1JM+}W9MJ1as0PsBktBW;ARcxwZW!8 z@bCTOCsA+p;MLAxIrAcl+aSTU&}d`ZtkSytb^k_l;<~`=!%pPQO~Oy#*N+Dy!zE82 zO(xr3d#3Z{&mV?Nz;}smgJUd<52nQc-Ob_Vhz<4E^QU|M!6ceZaIea$Z_^I`&O0tH znGfuq?r@h*BB;eP?kyvs@7u?(w=*?~hOL%z?Fto=7^;HTX{Eq_Vtt}lKYO}P*A#vU z*bKxqtxJ(jb9dq_?U&D+NJ@1CI~`!{MQCJiL~ql4@~V9e05{*a)T#tp9)=Zsz2Kh! zei`kPb_LsR>b=%4e;_oExzU7pMwsfwxxRR|c(<5lJFQA52LB0Ab-{Rb+Rb8INWCF# zKnV4DHx3|s_X%uSqIL+sBJRA;p7S1wB&XdLFb5+n_F9G9*qCSkIU9D{lhlv@7Npmr z`h9swlqaR;3!FdSedn;%&l)@A+uwbe@*y67P}l&M;kDD%lW`0_(K95RBa8we*j&61 zohwqt$P(2r`7KpDEWtw{TqWEE&z068f}5GRNgT|4!KaGL6KcmK4r==PwrCK=y;=2r_j%5g697@8-oTrj7h3M1~fSkwnw? zu64=Wu#m{=G$YeNV=S9W1C?)H1K;%cH1f8#0!|*z5f*A;Ghfo@h(3u$%!a+4d`=r+ z=s~BIng`*^xI`7Sje#JQ8^Kb*j`tDaKsMcYg6EAlz?o>UZs(3~c+nS~27?D7@xE3` z)q5=b2^6U5sD|jkmtV76sCu`FIks8DZ#ymqx>f%#vOMR%tei5FX zmb4qt&MEt=c0PGWUZx@OAXb6p08+uO8P_f+Ig9C2h*G*pAf4P*Ns%@0evOeLWvy`2 ze9Tc_;FU5&CnD1b5XTV5!w+pYo;dFqck46)fYD-feu3Mip{ZoEG&9BbF!OI*j^H;m zZR`BWkWx=b2{UwVS{@k=R{n7GFdHTHLL{)+AjFI6oKvPze3%lx*|LfxuF5AGy++o` zq0O35O22HiUJ<(VOl^vtX_Wi#WHFsKk?L8BwLzoPtsT)#Zz*oDrj^C2_n9Zy-MgvZ zfpQtW!v2uD7fvm9E+A3(+OYAGNSU6De6lkS4&;Qb=o6^mg_~1;y4n+@+l#ePJLAKQ|c(;E1}v zjl`~7drqsq;dXu{)xAPg3&$XJwqgl{1DSR&oZxoKUYOD)Kaue;d0767TJn9rW zWIW4U@|Sw#FD$2tjXuth6qRjXw_whpUT&Bal?gkv%Pcl?3wrpcJw;c)@xSoJfg1@~ zTM5BZB^NVM8jC1*zu8Rl&!W7ya7;LPNe#UuttF&}{`oY%fO4lxXwsG*C%yU+HSGdK z$oQlnRdOEQ?%tS(^ks`Vqohp-L=YV0WFW+2gQeYA>0;pQ}qfBD=oQgj^ZZEl8o zW$=e(^PgQz00<%R9Gb0dvbSu2mCVy&t#jxNX$Y^|xNLV+L@%=Am3iflhHN9?Hxz3$ z%8=r+FZfB`QgQnxg8aK^WN0DJ??1u`Um?o#c?}*Vn&t7G#F#<-c7p9+@4m|$=RwH> z5JHmD5wXn>GLz^^I`1(Nt4*wwMe2zehymcCBvA}7V&n5;U}6P^-f%oX=XKuqss%W! zWC|TYT{J$zq^(_&`xN5o{nZC~@-nk_nv2Q)Y)Zy%mG#qVnwg`=%wffO&`H^%u;;&C zl(Z*<2qmK0qA7iK#=l6~TW9L>VQWiun&rk$=^>}VcuzgXo@=%l z4I{Np&#xGddllGow1XdigTlcn`yobIyKO|)XSn&D1LH|j_9eU)PtKuGk5NEc*GJudREG>peD6(6aQ=fDCDqNo6pdqz@rO~KFlA;57q)F;! zb^T@5A2jT6eeA5uC*`WCiS~Ht5%UJA>gbwHbNmQXam^KuwWNe~evpm{ zT%E0rBt;#2D%(TT0?>uyCyH#w68~Dy10i(Zk_S`JSK+`;gD?9-8AiPG&S|xXp9ilqiAh_r^;_0AC5Hp%XA-Eu%ZtWNTZgo( z6DZ(R|l2&i)`0+mmxiY{g6 zQpp>T8f+Ar?7AIf?GYJ9!mMgRzUW$;)RSqBZL2-F`gC=NiIkLR!`WrU$OEGx`ey*b zYhQ9?PA{aSq$LaWFN3}uqIa&JMGqypcTT_d$Yby71+paiOQdHM4;ZT(?+&g-X1kd+ zXM6DUjQwqjhan%6ur%;}~1mOzkX0dG{H=Q zXv$SqrL}=)7{#FpI2zuVaf&AqiMXzl3#vs4*IY)969!)$U^svbb+QFms%Gt`h>(o| z_wbR;wCHFrqz?3IdLmv%o6;m~pm$90))_yS0#`_R%DsX@49QJQUWh3-K;Oz;$>fAOY_{$>jn*3odX3V@3=pNuX8Yvwyo08x1k}pg1@t z?k*f5_5KWH00sw2+pej|0YlprJ_B+8xMmI|MMn!NS>6n-hq|EYPxqtr08b718`8kB zX7c0ZNtLMMb`-TGq`o*!>%F2I4z!?K$*{o=%ZY2NDF@KYAKh0)|E;_ zEQ4}U8X_?c7foNkHEvOh~(a1yFj?me?vXR-FYgidLMefvmh}(Frv+kd9*`KVVX}uv(RV@nv}q{Od2#>{+PbsQC`(+}x;X*M}dC=My83+-TsH=%+3! zV12+1QvQWJ?T6fW{$sF)5J6|0e)tOv*MSMec7<{!AQ!{8w_`jy*)?Sou+Gfxvw08- zL5sETi%dHLn*>>qRRo}YQsD*V5agyWc5x|3fl$bT^{n2Ae7fyCaQJQj>f<+$GwL%3 znHR{#K6T%L67kKxVpl7YV2mnkRJSR*psd6b(2}B&?S>HcI~&+@SaH7YV)U1n3~HCp zA_-)u!#vfYb7{?eRb8U8=F!Br2Btbm z!&<{gJlpKh2#-fp=Zo7qEJgakM$fg)gNX7`DCqThFysAFWB*8IyzuEiYZ8X;=ar{t z)%S%AomqjqFUXu>#Mvn*oIkXtXkN+Yq#Ibtl%DrpbFw9)fo|u|z@gwtUxQQRYfx=q zqrnY30QX77hK28pbMXZGc&W;i_m35~b>&KFZmWQxbxhAytzy>7SpsWt^IU)S*QJT< z>?jT3$8Rru_~SM|?@(2XX{{xK5?cyU5##wYYJs~JjsX*uG8_D6-7UH{jb^+bJUdbMtuhBEMp#$fAj|g+TX=xUx zI=ad^CnV~n&qq(4P&d+>Png7En(w7-Wp3VlT}8({dkxWGjWxkah7ZxTw~%P8Ha& zRQ(?Auru^Coi3J?5^@*g@}SLesnQEF6ZI%~WRf!FuNEx+9F{*(MX|i*#PDddXun)A z2-V6lIgHieZuAivGg*HZq^=?SbKsjOF-$E9qroy_F)j~lYk*v(>-Ey;?AE~+Qu%a; zRM)Kl4pz3Un+XROC;gKl&dA)G&h)-zZ51xm{S4E^W%o6c3{1up@R06r{T;wu5QM;LPTWoHZ^Ruka~5jRMKD}}0(kIIirSjg-Q zDRN(d6so8)0+%qY(9Agv6fvYiDMY0>zRLju0oM_Zr%>JQi@Z<1`M)jHKTS1WjuIDV zcRapx1>Jx0vAw8qF_{T5*jbeY>TD6^MEE}&<>G&jA`rM#bJ)EAH_8_~i3F#&u6C}$ zrFnG`B-?>TU%cI2`OP?+1C#a7>kJ?7elLz{c?(+?KYMeRU42xoS`0Iqd_9Q6=Cbx-<5$#v1$Xmzym3*He_-Wr8*iVV6mk;`eZIec zxdR0P#@Gq9t~fM-m0I!#pd5jB15Q|QU@b;l`A>%c+d5sb{gRdKW^zTvkVeBe$Y@2k zP^Cd|Z00ueDias#EGiqLw3@tt)rWd-P(u|b{_+ew^6|5d=m@ z#xMFiOo6k^3s*bSo4K9F7)fqVa^)INI7a=_StYfvuHaNaJN-XC>x~da6>Y?(5`5*K zyZHFm;yJsB!vQ5A@PTC6-2?~MDFcqlugr>Onn5JS8Rj|6!l!*y+4h?ZAz_K=wewcR zeYU%}0pK^G7$Fi%5E^%e*c!~g@OTJ!nT*YI|9136;pB$x={el_fiw3jC(Wx)?h9_YOP@alQKSw zT8)qBpF4H`zvki$udRIuI8F*`7W>OAZXEEviLwHk`!k>d3@FMJ&xnNP8yL#tRUslm z#?~3Y=L!g`8ezIKBug(^IfTO-pJS3-ykysh-0af1ZhFI5&?KGEUa8%n;e=<1+Peso z*8=hk_-aY-MOHUbIDeyPtIa5M5`(#BOt1SZVrB55v#v1h!tz#gnDwGkLEE>Ood*|jX4j19I!GpHa5EexBIYzbM`v0sU&Mvn9nr|M?h)5hGeg=KKMM&s!~ zNY$p_rZIiwPDQ9`!tgCB$MqZQbMQt-gsI8JTnNn^H1UjAj%N%tYC* zz16rw)`|tvAY)bSQDTlDraC%EHuMlwsvsHK<`92GV^i02q`y;m&79S3d(ba>biZIz zqj-M1LINd|;f6)C_E5-9LERA<$XE}6Eype}Lc@8qXF`5(B!j=;)|1~P++s1tEe{Yr z1vM=VPSm-sokbu>S+CIxl1^9Uwi_n!&o0UZCs`RO*fbP0>hw z_8nwcznm4NecdeFIBE*@3a;t(u|?nuCE`O4Q)OB42iTryQdn@Dq}hfO?;tRBN_!<< z0bDs8Bx0fh9P>P9)2UP6Fx!>W{*?fsa)FW|4<(uwUwG_aSQp}w8E2WU+uT-HG4RPT za0xVB1gp42IeLhEhhB)o=@~&lj5};6>tdEFs>DY&p0C!l+0&B984vT$i*6WFp7rPI zReMVdnEh_|L%_hEgp~x{q%4gM&ik63ets)6aYnbOBK5*d)Nj~FX)xstw}q0Djve9T zB{Qktnn<1H5u3P$4de=5KQ!-L4=t&0F_F<_xz_TC`qWr}B|BTwa>-Rd5{RO^xc`r= zcM8ue=o)R)v2EM7ZQHhOy-CNmZQJVDwv&!+`}Ftk^X>m)UskR4th-sOs^*wuMm9N* z$2sBiv{DzH zaIdE6B$pW;)lc6PpTNYvVZJeC6B-<1T?tODkbNh{4N#|c^TO;wVxfi_Bwm8#bR!`RCT!K8logV zP38~X{`2f!;kNKM%_uIUyWmB%T!jdujfFg0XKXV=+?;exm3#To?%>P+iL>}qZa@wa zS**g+F1p#rHj|mX(9;Ut))XalFJZKtLm-pBRXhHH*Ab*ykZ(o{Zc^t`zi25*IJON@ zqJU|-WdL^;g!mVr@H<vn#}oTA_XVL$ zzp($GY)jHGFe3GTX)0zWw*O7Ru(13;;6Dp%nvmEpQULCF>{098jzK|FU}}d9FgAjx z4dO027U4hYe+b^t6nQP})4x(vHxgB<=Q;xl_Jx(KQM1~wKzqvh{btf3DSe1`iF+Abr(!f9c`-}M4ZQy5bT)?1Mlfq(~_K_Wn?qphiVQ+R9kn8`pCnldb zy{O}X5BQ^Q{i?k-Z_`yfxEgiYvy(GQJ87H88Rt~UgJ6Ke=UcON+p;EJ_f#5Mhr#1( zx4Ltou;@_l-MZMAxn7Gim9q->?IZ={Kln=$>KjA_ZW`=b9`JL2e?ZVnyLctANP%!B znfeL)ia_c8_F2e^=&HSU2+jWe8Fw}c5w9bc2LQZXWa%o@-OJgRJ;~+ng>mLBWp!s? zW-Yyn^9Bb6YJRew5#%V;rKUm(gqcs!@H>`iXaYb8_cVSUk5}#5WBV$At{w6K-W>q{ zH&r9sc(_ICBU-GH-;93U5r4VJ{o4fz z0F2K1SKw8B8@yMLnuT{{5Ol|Ygh*Pr5d}TL375R@hZZEeujKUhI56!cEfm!8+>yW| zu13?6P@BcQsUtr6ckm-1j15!5vP9O-8O98=7hN*z^uV)|H-9( zU0_Iw1X>jF0{iP!7v>4-y1tGSxF2kHI`DJN(JrlhV?=MIU)cXe3bGaMLC&))_0Gr6 zP-yX4F{Q}3O>RC|JR#cPN|{n8(|3pDk0&jKlX`!`f*&9j-H!eH49VFA*ft~g9S|h& z^@|-;0t)9F^yeEIr?AB}>K@16t3kZ}uD4Xc2Nj2=nocA5&M-uO63vKLv%s{2I2wW` zm`Wqq2@s-}W-Nw_piWz;i!^eDR#kR%eBz^U%`RX)t!@~pt{|1Ea4-+u7tlYd#MkAh zSe2DF9=LmQ948y!p4K>yrtq`m_J~V|9J&;eFP>={3VZ12y)1aLdj!zVL3 zifxn=P@jJeZ?4pQ%?*Os5T1G_wVQ>imWb$(^AX%S#?Nj?91J7`_rTF3ehAUw-_N~< z$|y5cLTeC<_Z(rnIf__qA*ikA+^L|6HM$_OpcO5jbu5Jd1@>JAaYlfC%`Bwn-c-4? z9sJ~Wr=G=>`BlE}^pYft2eA5{k>{I;uO#7Nw6hu4PL0LuJLwRi4K=;tI)a(kWZymK zQfK2JRCfx>71_*D51wlzC7JFqqZuvQkVQkdKr-DQNw;tE7n@lv92;CX;(~dNp8~Ct ztscTZXv`&%4Yx6nng3g=`6jvy(N`!5y7AH1=ZeA!ZBO@V-C_bE0|+Fh^HE%iSPp2#kop&+ixxY@s^+ngK?WTRY63T0L|*V0H`y(t`37iDJo zy>Rd%hpY-Sr?^K_7(dpLR7tB$GJN4_T51^QZ;S>izV3B)%7B#IIM$;z+!HO>ZG~?a zJCK=*-ziCaRbzge0T^Z2s-}Q?mb}utFT!*y(d_^;e%e2kngGL;kGo7&WBr6zbrOPs zOlon!Ygw@L&ss{^qKp@9V13J+MC0OJ%b`ufJ@;hF6vDYcD&g>&W8X6>BttP8R~;42 z&kYP&uB|y)`?@~#piNn5jvhgW7HvW=jzgLUQP_g9W8)yTmb$CGEf*uTtbzgTPAD{O-E=nQ+7d~5V4fN07kCJ z$NTvPexVe^^{H26(QgM-+YNmUX3;Rpp&C}twGm&E* z>!_zpRBY(90N80c$<(`7F{Sdtr*PvvT$N9M%gX@EP`Uod4`B%v^V+ zpQ?B2Z8k;MsD(V}hwe(DvF+7FRmW8OpP||RMCY#ot!l`FZ|I)!{}Y#`|Kc(T&HX>Y zTIXodswrDss?y6S8NzMbjiug>Q`4sm&$B$NIlX+q>T$bj2}G6Y;*T|^h{wKPmvUI z^82HlL&W`nGW(4i+VQJJF1+H3;`MZ-KJO|JaZ6u&NXD=y7fz8UorY4iXcswQ)G+?4i&yY_6Ry7(b-UK2quC0<%QUFTOD1oiv59mp>j zZOOraKuoIxrncg$HHXP(j9ihT+9PpJVS9Wee;u%F?;%6mY_R^`WvfNm_5&4jOzD zxXs7P#eXnVC1V!@B>d><#Q_jfN?NY4y60Bw|*sloVHN&XSZVF_uvXzC=(zER~^V8^nTxLC+*d$dRf;YBLD zs@svGUjZZW+iK0VZoqeB3d05wcVB8)8R5>iswmo^ah|6EFudRC_?BvBnFIDbX)Q+B zVRKd&x5$i*o?cew8d==jaGJu znxSPxz>*yRiQ3Xp7&hE%Jq#_p@me!)esqW-FMqwE*lo645{}8l(nLdCNayk~&r{cv zeSF2>OtR8m{(eBpWor;nATu@bKg-m4W_d@u+$bw=E<7`|qxDB`9+AfUt@-XGYh9j3 zZf?bRU??>o@~}?Fv9oEY980_Dt=E-8fLwEoqecS;bP{;jm2b$gZnX3@da3E!;YX5H zB-GRC?Y3lH-zxa3?mAyte1pr+uNU5`E*U7UYu}z4{iUi}E5FUm<#3xljQGntB2F7j zTbqF1EQcUGo3h?-Zsmu$iI)4QFNxAsj>R^bSL`?c*syHR(cKl_Us>+S zL`-QgEn2P^| z%C~LIR^;O#l&`)_jTNENeI)9p04R{v5g#iBn4h4YQi>cdMcwR0A&@+XHiqB%%WEC)irQl+J5AI+}bg zse7))pCGOu6M$3g=Z3Z*TsU|gV-1p3(-yKg`i$@cj0CzAdJo5UbAR^Y)(IoQD z21Ih72e>-fv@_M5K!mYgH)A2FaS;pxe9ouoMbKyNNq-YJF=u6h*HK?xLVXX#Y>~r| zZdcLa{JziK@RiQKD{~mIO?)#!RgfxD4Yn8;{X`CR;WNbZ_f4^iIg*hFWd@0*?+v~^E1bd@AgoAC zj#vlhw62Y}j6H@qME#YgQz1k-pahJ;5a42&I4~a23UvTB3#ENJTO$mz>ag9$#|V`Ex-kZQJuiEX7)pWwc(0V5(uBCP~MjB&Oy6 zZ%L}1|4@6O=Duy9?BZ7P{gvKiTCM6uH<9Z&f%yk6i!!*+dTtA6Ww#R5uwI1BX24VWajiD}Z=GIUGHNhQ;dU!{jz;JY>klXY~~ zZ|QxKs~Su{24sFi7#%|J|C0ftQvbL1oQ0i@>;JNWEdN!X{I3>}h2wuJ(p&x=Ob^y5_M1ra!h;ov-}qOm8l%aykuWWnOGZv<(1Q{y2}!nMMr?j2G;h zv@6r!nJ8lZE*Pn{*J(X&_b)T19c1FLwsx4mSG6EP3ra3 znIEfHw2$vw-ph?(>Lf`I(3BM{u(ya)y}8BRn*+W1b#S4;aARQb2Nh8v%NbFIOB%G{ z7O}Tu+TjF?UG@6xp^DjE7szeMC19fIqhf26IiDDW{xwJ{o9&Y5iacrVh~3LT0h~=e=gl27zDL{7--J{fBb#0^fBPW-Ct*VhA!JvT#S-aWSy3nW zw*p=1#rmBtwW9go4(vlvUW|a4lrb{IH~pV=3^M=Cst|Ra6>j|MlUI`=L5#?|K@9aA$X>Pdh9o9&0iueY#*erUrdGJ4D{O8}xA# zB+fJVc5kM*z>BMN-a!P3M-B&S9d(TiK24Bcszj*$>SLB-OCMTjGSof2@0&&NA2-(_ zEs9c8xW-!T@B2NnMYT+xVGyd|z@!rb;gPLrv!a)q2NmNUJqe>f9>@@6lx!(SPOl$wfT~FQHgYZHbN- zuj5ysQL$S1s?|qQ3;bNK4*Cfy87okmToX7=ey*d%YB{ws=+KkaWoxZRjuJn5!esd3 zrV=~?yq17wvGnc}gs`9*i)Fn8C@3QKMC*y@i$5CUz>Rv1f~Bor!_ua zWC71_qc?6K7mi>c+&7nmpiseCf!a10EwPc;iBt6)ts^`kH61}QS6-B&iI7$89N2V%^a67aPE0ohB-|^);79SFonBt@7he?{4e3IU1G1lpU93mV;a;6zNpkycQB{HP^2UCi$*znvyN7(_ z!HPPhj*h4+XStlkR`96VFY@^~Lk?P;Ne5pwVWKEl6Z%Le#U;kRnhZBYu^hQ8goOOM z{okU|;$wE`liX(oes^gCTG>apVZ(0#ijNPCs3w}W^mU7)UHvK2xhFtqFK|jan)m|R zUT2fAf~#2jb#*+99#Sn2O?4L`&48QFaI5BTpkKC1(_p)0z9X4BR6L5V*eSMEV&Ed5Oc9R`U*Z(dv% znemZ`Pu{>FO{px2Ie9Dz1Na4};U8WlIMfxU;zWYfnbE%>$}xsHS4TCDW&0jAmSR-u zCU&F!LcGazPv5bKVuV<8j<9qhvdW{l{MIZIAd|h`=UqoU{gqvWHx_6hOVyeFpx{M) z3~Opv4tyQ8HL3^m37NUZr3W3DqY42U03aj}!f?}lzA=51!*Pf$0F11SBM*A5rpkrV ztfz=}2Rq)Ox?z&lOhbScHXxMKVnMsRC>ROQQAvkz)lD^cC0I6^b^X>8yUw1*p)%0# z8&S$2C+EC0DDekNEoW{!@FUDfueLEvgc6=J|0Na|X&-;je5--{dCJzoAYqPXo$Mm} zwed%$R^3(y$ejJ64Iq0l0@V0WZQ_nNoFuE?&Y(@Du_7xY?DJDK{SB-;fn9Q9Z1 zib8{~AwA5}dBCk)6_i00G#Jizx+TL9pK1@WXM#9SwVh#l1)7bTg}>ZqHdE|3oF0Uq z+R1q=9K-yxj)p>VKsI#Hvny84fe;8d>nOp5kmcF9_Wl@ayom_0fZMW=0FJyjmB%OQ* ziWsgg2uW9;PI^k0a>ZsGVyybfVk~%|XnTu>hVoy9esS&U1#(GuaOzg!xZsvC2t=vK z+QO9^mWFg}Dd2bDYqwYlGW}tqi*l#=FI9yNX!D@`-306vy&zK$l`RZtV9Vo@Llv2< z=mzM?MX>WfzTLmJ*aEwzJIJ&Wc^5$-3~Q*!l;)Fu!A0l8G{vLY>IkyPvG*MtItTcE zwG>IgY*KDor7Wb98Y@^Ekj$`;_`b#proJgdP^XaLVFL<>MD_n>k%4g(4=QU=Zt$g% zuI_G!6)p{;H>5C2^g{@maOFIDp^;%-ZIceJ;byxa0V9Q2SjogQ54I?{aH zpZn+M+h^mQrc+i$fY~ZcD=pFDX=!a;REiSz`!MG;HhS>9TH=)0j^5t2L|R%kd%)b_ zSEz)0*a5;Jn0K*!wO8*0$$p2OBPPwoH5TBJ&g5V(Hd|VB@c=2@gusf?C3#&IN=i5@ zFk-)8jWP6{IY2B>a`1Q86ZUw_AYlf67f=m6mukqY<-HdULhGT~DA z9Yjs&v~vCR!?RG;8Z?JUem~1z!a~odU(YBQuFtIFFFZ>)_S3{ z84gfbLr!n@d<21tXV9Q^6W8c*Tona^T#O#Cg7kYg;nkJn1Dyq9`d{i+7;qzMEmzI# zg&a@CnQ4SVnp%8~d8NC#que375KMXu(P&FhF(I$oPl^O}K4QvcUqzM+ZEll23V!{( zMRpLXL_%~U^bn|cx|zjT>ei$PynFrsCVi{ zmgbDCl9!0haQp)-CY7?~Ri&ur_5~rcL{eKVf|52?ff|@_yhvi=ptwlJ>SukO*8eJE7+q(@y#Qc*(l$ypoKm{T2JbJ-u*52{!p4}Woux*_JTunT zXXeNDgRsh4hmVW%T95E7#_2Pc8!9#-EQ&*5##DHH?9Y09Y55!nmwToqtou6=$oB{6 z2;p^tEsxLYp9&y(59hD`0upGUSVU)x_UQLme)K(_Fy+>l@$_at_Q|)U5j)^*+BmyD z;)v<~rscP5T_}6UI85&CQjTeYU)&mNR$j^_(-Ty0Oj;%(4c1?GsEzQ7HeL?mT0|&U+Q&lAc*% zs7BU28itl>*{ECZ(->=AxP}+ABfqDRQ%gKKQLC(WBxKp{{W(3ks%d?p0>)*>s2i(5it?_mdgXe>LVp0C+UBA zq-KcMwKKZt@|F|(-s&3I%&3xaXlRuQ*5KCNZ14ei@lHV+2$U+GothfkcQ{pMXP)y| zMTSKq@!k?}HeqB^@VsW9G&f?nuB{!#wTf>F5;Ngwz7dB+u*pK?tf#>Rxa zh{+4Wh1VIK!$^iP-Sh!AEfYN8866z&rzEHp zOVnN`1G&6YO(@^DMtWnE@apdI)Z{y=TVYepE82gIKrp(1%tYGQ$QEt)+l$VEHD~$m zDmhlk_B-ZLL%#$o^bU$m!5iScH0jU5nd;83hlFseL}jvU>rDVL>#4hQT^4J}yy0>l zmEs$+28(5W#{AXEQNKL5Hr!9<$`^}7#L^@dk6gF(ugeJTH(V|1 zLzvrne<^p*dg7$Vf)n>{m-!-Ka&Zl#VbgP}_ZneDQG>;a4!9;-I7G|KsSh#s=Wb{( zR!xFv`7@3*Raqx7A`HCUwof#Nqc=CNdGMBtsf&qm&A$Q6bRw1sI2#P5cpjiE@oWqo z@(x2~mK-DFi_{L~6ZWxsdOj=8*&im((2yA&9oDG} zW8zolG!&_K`CGz$t&nT^h7RKJUk(AT$AOyNRt{ZgTITC*px9sv& z4y|Z2I2!?In^&=yCYcs=XwQlGx{nJCM5?YlJ%vb9N#8#8?Bg6Fx9z+k~{d&K@B9%8rwC0Mr;4Jszr4xsrBvtr%`I_<~~e32g4_wyE2-T z1!;5R72A3+R-L(~pU8(vxpHG}pXGZd3q#EJ7whw+FS$S@d0!eTXTg)VoEs{`peN-i z?9zr0dS+sU8h}H=iiu~d|a%i5dePN`1!v5-Y+fAomy^; zezfF!{JfO3*FpdoQO0H%-}h~caSD?o=Z{Ax0)WKHBU*v+r$*mIjSmrBhV!Iuy%7cF zE{7o%*;XR+UAgzT+O!8qk>DE;zN2kFM!gyL&p~3QSIvW|#2B2^U`}fogI>QBlD z2%dL!8jyE3oFf6YjHvh}zgN5KKI>XU>4(2X z@Hbe&Yy=;tvWl?QxPSx@Ulv`2m0PJmP&LH}7A@dZiMNXYCd@WiPywAcq8s9rAfq7g zIxZY6y=RDSs_m@KA zf&A`DBH~dQ9<%z~2^)2|QvUv|8|19buNOdR8OqfknKc$PV>6yO#YJp=JQh|=Uv7q& zU>g{`elBOriTD<5p9o@u7&l9iN~55r$!y))%7VJK;9aEy2EiSul}$-$+t<>z>)$2y zW(t1Xr)j6#AFvm~xvpQqKEg54^CaAOD1n>J#snv4roK&p6sULZK|1r#?gqqGod>8Y z%UBmcZjFtdkHU}C;8VNz_%(Pb&3!P;#^yr$+9BXq+>!(vfs2|Nck1XDCN*yhK_~%o3mCIho9Lp8A zP<{b4(5XrbcDi45W^a}~^4z88cS{S3=4vTlVB%o&=%Tq(wXb&9u!Y~G!g)3hZnBJGNG4r!?Y6u$ zg|ejVE~jWuWT6-C`Nq}#fY|CLn)BCC7PctTc!3%a(!dwDIyhhe^g}#pHbA=_KcO@9wHF_-I>*Moz?HIrPo#px_6FB zViBNg{Lad);g6G$l9^H(YFr%zEV!emc%2`hHF^z~eFW99Pbr{8N}$XNCUBZIzo3{0 z$ZEIMjB$Tm1vIBZBJlrP-rrf(>I+{jP}#Vm0v{8IH* zk+bXJz__H1vzYOA?i~X1mL^-(U9X=tr0wQY`Prb-ME6Si`NC*|h=|#m?(*5UvVL-) z{`i`5lk@L6Q`WjW;WC6#(*MhsD*oc zqkqgcU&xUZ2U(OJnN(%u7}L~*cA=0@{~U+#z6Wtb=bVQqaWH(Fw)h7g_i%L!Z4D~b zr#G+}`{xV3ou0uXiDQ~FDVBX1k`JvqOx=d1jwzYT@$6cETf()bM%ZOXyBFN)C${~{ zym9ahU}IWR5(if9iRu0L+v&iTQi-4~4BT!&onpD}NNAs>(kB^9kgLA+Qze41LpTxg zstinTejrjLv20(vEjR3qF!QJ>o#&h)(aS zI`)s8F_+9jk-A?B83n3?>a1yr-L^KsJCP~`5J%*N6=gx%t-Zi*c!D^`-AG=RLLlj_ ztJPOBnrW>rRH0EL_|K23tyh9gOX`ytr+~yfe}~H#v{l6YG0?#Q8u*TjAe$zyy@V-_ z92{EIqIh~w|6pKnrSXUQ17p&TwQMB7qVeFwcz% zc$sQ2wK)CDh<1Ma2T-fim)&iS0y;|Rn4c{2$Xe)rjZg;Xtdpl+r`ZoW1awKnJm46Y z>0Ki>fP;tlJ)=fujj_3EaZ>4{h&3!hA>IxvSzQJEoX-|u*FD|!+Xmm^1PbF9XKdvD z+K8o_-qdr!5Lw>Vc7mzhMH1%}D^VRJV9i7(Bu0>DqElM|>jIm%RB0hFcc@Kv!utcSgl1Z!m%_GUKx6T6Ah^iNjYJnM$lK3Z7ONp;EbxMs;9^2k|J{qh|>*D zm@=5r8fIH2uTVF|#TSg*g z_e00NjI}<2Xwj96FZL_S26EP? z!-hcUie*~phjL2zw!x{N`Gu~6DwWUCod+t}*G?}kDtCk;lOC|?I9I1jVUwVQql@5| z%V;NyV1WnM$lMD9WWY%gDHg>&d_@Lr+lSoOKtU%nY)|cj;BsfbCj8g{k$%)59l$Ei z*wkzXJl4+ayg*)fK;In|sRdIDoXbXoLEWse%)-(%LXxRfm0`JrHV3C+Oqp+@M-!AF zuMdlvq%(cwe`-X91yWwHC7hh;#Y5X4b7wEeqAFzlFB0Q7h%8~`YCGM;mTSTgD5lXG zCQI8JrdPddBon|SdXH`a2(`XMmhbE5e%CB%FGh_XFX0qwYj|q<6eu0cct;npz`Z>Q zXxZOX+j!&G(FHs+T=ah%Sk;_*Dh0u)#a?LRXA$>)8|a{ zH}5W#=~eAMl5D#HP{6;hj*MxAT-YNOF8Pc2bFzI-f-OiQ$1S_7NIUbOCc#g2Da)mw zfGWHRjn$P2^hoXK6IHO8zPFBsB{lTN!31)cDOOPBj)r<8sI0+DCZ;a!+bUy36XRoy z7iE05+_{)ufk?+FnVlraBdj_@kbC3zxYw|va|hSP9CR1}-W(D0E})1MPCMx49fo=j zEmXEE97c|0KDu1J8&vxcoXDDf_%`S626i-`b`vLH;dE0w;*J_!;D*)a_}6!1`F1IZ z#5^vl`hZ6KQp7%+Uk zA``9NUIH9!JHjuGOBlkE;QX){(*1z;!)Q~f5#rYUTkf}IyH=HVL2vGg5;&7fH7NyG zPzX`LHCU&FjB@0ON~K2YBr5B@lT+Iz775>~D<HXl-Yj$RX5+cgnn<1+-RD-9XM^rfWxs~#16?v1iDEXE7wp~H5F z%f)jqx=qKG`n>I6mC8;-H3-;hwUAY!$YD0XO4to3>^Is-F#cE)M_l>9hqSI|^20?J zaLMx00(T1b$h41XPno#%+4zaC56i{aWpbSzscM2Rvwz5MOSZy6rS6-r*=ZN<0$lK> zklnnE*HTPxF9gWjk&dL9(nFe{appADWG>c}`)4~QYkVLH7g8Dx_c^|0O;*wS|1Ic*Bx>-V% z=U1NDMRd#$nn(y~GM|064MV(bYw@&$D{*OZ3$M$QU5Ys{CdG;3(+jzWe#GtD;3Gm; zcSF-iMQ-!Vx+6Ak}I?|7RYTFqTqJK+Wfi1ZX%v!X@I0 zjZ`K*@8_!f!DeM$Ktfq$g)JyT=BJ%S5d)YxIr|s3eX+oF4M}&Z)ln(accwX;8;!{? zpy-F$tM*aexhCxE;e$KY*@OD`G`7cN>@y=c<^gv{gk8%YScqtNyVIYyM+4(PvZMqi zR2o*s|JL*|G5@dXl=Z(NqyNPcSXurLFON5FPuq4^TX*UL6q6<65I`u%QUt%hDTDtX zEWsFp@g8{%qp}Txb)yAKPucRA~D9gh2pS;CoLB4!WldpmE3d zqgk$V7U|;sNh)ieuDdhFs_l05 zKgRvoMDN%4gI)cl_xEc3rRPq-pK^{D6JMWYhVyss9?FBf=nu}WC?}}83df79C$C76 zkz09RmF>@%x2N@(-Y%(yyuE9_=*`b|&K&v0udj<2g&TvsKdOj2VdfAGCd46x_#{Ib z0&ib#@F>>3@1KPf90kw$P%QEj32K>6&Mf8Y3Ppp_@XjbVr8s*bVwsx&rJaaPW~I-O zj;F3L_oum;x`_i4{cbVOL3Z3rm#xs=tLr}>0v>Vd55}xpyZeMO$8mDqUH6{ zuP*ct+_JM~p4c5>F9!!%SrkGj6p*XtFbZ(mv(r|{?a^hIc*{1W$Tk*6C_XpjzOi!>yU@=uz2y< zd(5hbtW&j6>@alVw8X%-LaCHR)@3nm#DD$7ouqrzII{WYEV-0$f@^@(v!96q#P}10 zv`;2wg_y-ac0PSq2YhXY1VJBjcwJzEDX?TFid>S=mlsJ5iEP>K*RPQ>!5)g?NwOo` zQ9yxBK?}+{kTTi;r$H4!ZXky;;EHEaUqHen_XABj9U0^A)ve`-#Kwc$HfgmhZx~Gh zrn7{7?J*fJ(b;4&7PZ`m)-BBE2(ZLtO8eS+d)ss-AnQem5sILfAls1vae*SpflY-G zGTK#pBznsLJEuyDzVkc%R;~?birJo;b|GsxYo;Dm`}kUX;99Jiq-QWI3Z>@ZGC8@4+v_ILuO$bXnmA?H*Ze zr4(K+=B)g$h8!Nnh&5=kV5y)}_%cRMgi@cV6OWQD9+tz@$E{M3^q>pD!6pZN&k->N&PWVR?DQuGS+jPaK> zn|Sa+5dQI;uQWbN#MV=s`s|U|AhC25e>+J^MqcOQB_5?FcNR=Ux3Ja}M}Z_cP>qTh z$17^G%T##L-$;=0fSPe6<&($T7&%ocXH%;Dc$v2WQ1~z2G*p!n==HY@CjV4KPQoGC zEE!*xAOUTJcvj7V)G(>TYe zT!;z_M8Uk6Lt1z#+v@d5jfQCk&0YCgV;0M^Nhlc?M7~|gCGt!#rXx6@$XTwN_#iEF zsF{8NpvY|%BkJurE5m}I zT3P$BiI92+Yd7IIBnmo%mc`*y<m}UcTSW;ZB*BpB#ai(T zLg;TR*i6ZYAmqR|&L_g|w;|EM1E)ctNoogX1)>3*NssW#Gztr(RSfTt0Tw6!obvRy7%={@z35Sti>OQRAiZJ#T9@FNd+@UtiBQ)~Uy!H- zS3jFqWpgG`Tv#5*{072&00Tz*jhBZz7j?pmv)>usNh7?C{WV-D-ZC*_AWNxzqj{H= zC+SD@@To4vljOy)hed5BD2z|Vx6YIbK)%ku3qWfq!Y<(;*-fpsRJ~@Jqr#q}9}Dwi z75GEE4O{U(JiKL`$;VfWDDp@yWx&@ZB?9fwXNSwEE2zwh_3jKC zKn%sW6M73k!r7c6sy_}^QV*jUQp`Jm%RKgQWe~~OAIrgP@oh`WuF1XxO|&oppqG-M z_o3M;QRwy)#JcHZHJrm#a#3wN!CKU@NwlW(Xx#1Vli5q|G&@PT#*9^7Ml~|c(~Z8- z6AOEoW)n@4G4UY-&iS-h4V?CYVTO#&K+@noyd*Yj9zY1zIXsQZtHp(a9{He#ibaKI zjV>G4n&}!-jnccc-s<(I(LXT(YMH8R6+P1KGE^tHNOMF)h`ymcl<4cP9r-pW&j9wi z74JLbOi$pzFDfwju?IvwF*YL8*;ms9rFqZup_3cLD}KTSTga57e%hT~6XC4Lq_b1hrTDqstBh~#KLEVc!qQg3Ekp`zml@w;39%TQwrSuRvUH9FB35UZtw{Tyb%V2U^XSa8%E{D~kW zC*d|9oXH4X$|Llhwp$d=UzH9HMG}tM$}W6rx~BK^t3^w1dWQFSrJ79C#rKE-tv(VJ zo7DXylwALP?P;~q_#A~9I6JSz#s@0Agqq|Lx9Wv-oGlAW9$_;!DnJ0SXcCsKuV-$oyZ^rKdCvI>xf5-lQJcWc@tjsj0{UO&gH* zRvUM6jAgArBkGmQrfe7{tYiM&G>W6mz76s-&hsNao9+4qI>vv^X#>A@Cj8uDO-uy} zpuki}&u^VJG*4&u1=lv?RCf$c`~btN<|Ny; zn8_4Tq2<1K&LD5%BL(Y3vgctt5Fb43g;WmQa#gD0&V@~?U|Cl{pLHPeYI(q;k-F8L z7TGTq3OoY<|BWzp>fA$WkJ=WO((Gaq(-AI||3RerHiG$7J=7?`<}F9+;d61mg%)) zU?Ei#xK)jb7@i+%?{NNpJp2u$YPic=PPV&D^Ufh4#ut_rqgLxzb!Sc~bZ~tCaOU+F zT2}_5(W6Xs^sfj__?Vw*8}z$d3!d zSKm+bYhc$thZt2YocoYD>m>ktB<3!x&9dJBTJ8Dy{$4(2oOkTZl2QS-M$&Qp^AB$Tm-x=_&!%JkxnE>xlHXOzDTt9z!d68E~*7IU+fkyT6HTH`AZ@|H9K&IANy zN${2RxCfEr^@fu6)02`v6P?YGPU%5N4RQL4O%;bh3LR=%cdqnkv4_F|3JbbU1*d$) z&xR!2x6KFY&@tkm%dn4jv(&-t3FOtMEJ;kbKdtZ|XAZ}==F*JiqLWDHr`OTd>K^n^

    WXXIi+;kyo{@m_eYN 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

    rYnGLy^LB06q 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 From d68a2aa76108b3380ff9e340c3466ebe1cecede9 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Sun, 28 Apr 2024 10:14:06 +0100 Subject: [PATCH 5/8] Convert to using VDMThreadDeath throughout --- .../fujitsu/vdmj/debug/ConsoleDebugLink.java | 3 +- .../fujitsu/vdmj/messages/VDMThreadDeath.java | 32 +++++++++++++++++++ .../fujitsu/vdmj/scheduler/AsyncThread.java | 4 +-- .../com/fujitsu/vdmj/scheduler/BusThread.java | 3 +- .../fujitsu/vdmj/scheduler/InitThread.java | 3 +- .../fujitsu/vdmj/scheduler/MainThread.java | 4 +-- .../fujitsu/vdmj/scheduler/ObjectThread.java | 4 +-- .../vdmj/scheduler/PeriodicThread.java | 4 +-- .../vdmj/scheduler/SchedulableThread.java | 11 +++++-- 9 files changed, 54 insertions(+), 14 deletions(-) create mode 100644 vdmj/src/main/java/com/fujitsu/vdmj/messages/VDMThreadDeath.java diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/debug/ConsoleDebugLink.java b/vdmj/src/main/java/com/fujitsu/vdmj/debug/ConsoleDebugLink.java index c3fab3a89..d4c4647f6 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/debug/ConsoleDebugLink.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/debug/ConsoleDebugLink.java @@ -30,6 +30,7 @@ import java.util.Map; import com.fujitsu.vdmj.lex.LexLocation; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Breakpoint; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; @@ -392,7 +393,7 @@ public void breakpoint(Context ctxt, Breakpoint bp) if (thread.getSignal() == Signal.TERMINATE) { - throw new ThreadDeath(); // Just die, as we're not continuing. + throw new VDMThreadDeath(); // Just die, as we're not continuing. } } } diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/messages/VDMThreadDeath.java b/vdmj/src/main/java/com/fujitsu/vdmj/messages/VDMThreadDeath.java new file mode 100644 index 000000000..39bf1a299 --- /dev/null +++ b/vdmj/src/main/java/com/fujitsu/vdmj/messages/VDMThreadDeath.java @@ -0,0 +1,32 @@ +/******************************************************************************* + * + * Copyright (c) 2023 Nick Battle. + * + * Author: Nick Battle + * + * This file is part of VDMJ. + * + * VDMJ is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * VDMJ is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with VDMJ. If not, see . + * SPDX-License-Identifier: GPL-3.0-or-later + * + ******************************************************************************/ +package com.fujitsu.vdmj.messages; + +/** + * A replacement for the deprecated java.lang.ThreadDeath. + */ +public class VDMThreadDeath extends Error +{ + private static final long serialVersionUID = 1L; +} diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/AsyncThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/AsyncThread.java index 344358ad7..82f9cd212 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/AsyncThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/AsyncThread.java @@ -29,6 +29,7 @@ import com.fujitsu.vdmj.debug.DebugLink; import com.fujitsu.vdmj.debug.DebugReason; import com.fujitsu.vdmj.lex.LexLocation; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.ClassInterpreter; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; @@ -121,10 +122,9 @@ protected void body() ResourceScheduler.setException(e); SchedulableThread.signalAll(Signal.SUSPEND); } - catch (ThreadDeath e) + catch (VDMThreadDeath e) { completeReason = DebugReason.ABORTED; - throw e; } catch (Throwable th) // Java errors not caught above { diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/BusThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/BusThread.java index e712b7423..e0ec636db 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/BusThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/BusThread.java @@ -25,6 +25,7 @@ package com.fujitsu.vdmj.scheduler; import com.fujitsu.vdmj.lex.LexLocation; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Context; public class BusThread extends SchedulableThread @@ -52,7 +53,7 @@ protected void handleSignal(Signal sig, Context ctxt, LexLocation location) switch (sig) { case TERMINATE: - throw new ThreadDeath(); + throw new VDMThreadDeath(); case SUSPEND: // Ignore break; diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/InitThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/InitThread.java index 55b5cd4e9..dac060180 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/InitThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/InitThread.java @@ -37,6 +37,7 @@ import com.fujitsu.vdmj.in.modules.INModuleList; import com.fujitsu.vdmj.lex.LexLocation; import com.fujitsu.vdmj.messages.Console; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Breakpoint; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; @@ -128,7 +129,7 @@ else if (classes != null) setException(e); suspendOthers(); } - catch (ThreadDeath th) + catch (VDMThreadDeath th) { // Fine } diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/MainThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/MainThread.java index 2a6b52eac..ff62349db 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/MainThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/MainThread.java @@ -29,6 +29,7 @@ import com.fujitsu.vdmj.debug.DebugLink; import com.fujitsu.vdmj.debug.DebugReason; import com.fujitsu.vdmj.in.expressions.INExpression; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Breakpoint; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; @@ -94,10 +95,9 @@ public void body() setException(e); suspendOthers(); } - catch (ThreadDeath e) + catch (VDMThreadDeath e) { completeReason = DebugReason.ABORTED; - throw e; } catch (Throwable th) // Java errors not caught above { diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/ObjectThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/ObjectThread.java index f41e886aa..c9da9a98d 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/ObjectThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/ObjectThread.java @@ -29,6 +29,7 @@ import com.fujitsu.vdmj.debug.DebugLink; import com.fujitsu.vdmj.debug.DebugReason; import com.fujitsu.vdmj.lex.LexLocation; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; import com.fujitsu.vdmj.runtime.ObjectContext; @@ -113,10 +114,9 @@ public void body() ResourceScheduler.setException(e); SchedulableThread.signalAll(Signal.SUSPEND); } - catch (ThreadDeath e) + catch (VDMThreadDeath e) { completeReason = DebugReason.ABORTED; - throw e; } catch (Throwable th) // Java errors not caught above { diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/PeriodicThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/PeriodicThread.java index 10352e0c0..3ad1dbe2c 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/PeriodicThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/PeriodicThread.java @@ -31,6 +31,7 @@ import com.fujitsu.vdmj.debug.DebugLink; import com.fujitsu.vdmj.debug.DebugReason; import com.fujitsu.vdmj.lex.LexLocation; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.ClassInterpreter; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; @@ -170,10 +171,9 @@ protected void body() ResourceScheduler.setException(e); SchedulableThread.signalAll(Signal.SUSPEND); } - catch (ThreadDeath e) + catch (VDMThreadDeath e) { completeReason = DebugReason.ABORTED; - throw e; } catch (Throwable th) // Java errors not caught above { diff --git a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/SchedulableThread.java b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/SchedulableThread.java index 024ff2399..50de38677 100644 --- a/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/SchedulableThread.java +++ b/vdmj/src/main/java/com/fujitsu/vdmj/scheduler/SchedulableThread.java @@ -38,6 +38,7 @@ import com.fujitsu.vdmj.lex.LexLocation; import com.fujitsu.vdmj.messages.InternalException; import com.fujitsu.vdmj.messages.RTLogger; +import com.fujitsu.vdmj.messages.VDMThreadDeath; import com.fujitsu.vdmj.runtime.Context; import com.fujitsu.vdmj.runtime.ContextException; import com.fujitsu.vdmj.runtime.ExceptionHandler; @@ -153,6 +154,10 @@ public void run() reschedule(null, null); body(); } + catch (VDMThreadDeath e) + { + // Exit cleanly + } finally { setState(RunState.COMPLETE); @@ -308,7 +313,7 @@ private void sleep(Context ctxt, LexLocation location) if (stopCalled && state == RunState.RUNNING) { // stopThread made us RUNNABLE, now we're running, so die - throw new ThreadDeath(); + throw new VDMThreadDeath(); } return; @@ -331,7 +336,7 @@ protected void handleSignal(Signal sig, Context ctxt, LexLocation location) switch (sig) { case TERMINATE: - throw new ThreadDeath(); + throw new VDMThreadDeath(); case SUSPEND: DebugLink.getInstance().stopped(ctxt, location, null); @@ -339,7 +344,7 @@ protected void handleSignal(Signal sig, Context ctxt, LexLocation location) case DEADLOCKED: DebugLink.getInstance().stopped(ctxt, location, new Exception("DEADLOCK detected")); - throw new ThreadDeath(); + throw new VDMThreadDeath(); } } From 3b16f0280e6d1c6f363e7b1e383c9f4d8566b631 Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Mon, 29 Apr 2024 14:03:25 +0100 Subject: [PATCH 6/8] Updated compiler release to Java 11 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4a8c74159..7ab862977 100644 --- a/pom.xml +++ b/pom.xml @@ -66,7 +66,7 @@ maven-compiler-plugin 3.11.0 - 8 + 11 From 407595a023b61a044a2afebec0853e0cce31ea8a Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Mon, 29 Apr 2024 17:21:24 +0100 Subject: [PATCH 7/8] Add plugin.json files for LSP plugins --- examples/lspplugin/src/main/resources/META-INF/plugin.json | 6 ++++++ quickcheck/src/main/resources/META-INF/plugin.json | 6 ++++++ 2 files changed, 12 insertions(+) create mode 100644 examples/lspplugin/src/main/resources/META-INF/plugin.json create mode 100644 quickcheck/src/main/resources/META-INF/plugin.json diff --git a/examples/lspplugin/src/main/resources/META-INF/plugin.json b/examples/lspplugin/src/main/resources/META-INF/plugin.json new file mode 100644 index 000000000..31b597915 --- /dev/null +++ b/examples/lspplugin/src/main/resources/META-INF/plugin.json @@ -0,0 +1,6 @@ +{ + "name": "ExamplePlugin", + "description": "Example LSP plugin", + "dialects": [ "vdmsl", "vdmpp", "vdmrt" ], + "precision": "standard" +} diff --git a/quickcheck/src/main/resources/META-INF/plugin.json b/quickcheck/src/main/resources/META-INF/plugin.json new file mode 100644 index 000000000..1dc6b8579 --- /dev/null +++ b/quickcheck/src/main/resources/META-INF/plugin.json @@ -0,0 +1,6 @@ +{ + "name": "quickcheck", + "description": "QuickCheck lightweight verification plugin", + "dialects": [ "vdmsl", "vdmpp", "vdmrt" ], + "precision": "standard" +} From c3f9e063b97d09449e6a0ba288d42be4992b808d Mon Sep 17 00:00:00 2001 From: Nick Battle Date: Tue, 30 Apr 2024 16:15:04 +0100 Subject: [PATCH 8/8] Updated LSP documentation for plugins --- lsp/documentation/DesignSpec.odt | Bin 257991 -> 240347 bytes lsp/documentation/DesignSpec.pdf | Bin 495828 -> 488002 bytes lsp/documentation/PluginWritersGuide.odt | Bin 225658 -> 135868 bytes lsp/documentation/PluginWritersGuide.pdf | Bin 284166 -> 395821 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/lsp/documentation/DesignSpec.odt b/lsp/documentation/DesignSpec.odt index 0bfef47e30d53ff3e505fa12aa6a71bef63810b5..8587a461afc1a97a2b8d0d50d8b289fd0637a33f 100644 GIT binary patch delta 96001 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

    XdwuU9|wx}Ww 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 z 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 `j&+jW?d1wDzY_nL*y>s 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 z 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