Merge branch 'master' into alainmarcel-patch-1
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 708b8b6..c1944ac 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -57,32 +57,6 @@
 set(CMAKE_CXX_FLAGS_DEBUG  "${CMAKE_CXX_FLAGS_DEBUG} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O0 -g ${MY_CXX_WARNING_FLAGS}")
 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O3 -DNDEBUG ${MY_CXX_WARNING_FLAGS}")
 
-# Compiler-specific C++11 activation.
-if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Intel")
-    execute_process(
-        COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
-    # Just g++-5.0 and greater contain <codecvt> header. (test in ubuntu)
-    if (NOT (GCC_VERSION VERSION_GREATER 5.0 OR GCC_VERSION VERSION_EQUAL 5.0))
-        message(FATAL_ERROR "${PROJECT_NAME} requires g++ 5.0 or greater.")
-    endif ()
-elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" AND APPLE)
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
-elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" AND CMAKE_SYSTEM_NAME MATCHES "Linux")
-    execute_process(
-        COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE CLANG_VERSION)
-    if (NOT (CLANG_VERSION VERSION_GREATER 4.2.1 OR CLANG_VERSION VERSION_EQUAL 4.2.1))
-        message(FATAL_ERROR "${PROJECT_NAME} requires clang 4.2.1 or greater.")
-    endif ()
-    # You can use libc++ to compile this project when g++ is NOT greater than or equal to 5.0.
-    if (WITH_LIBCXX)
-        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
-    endif()
-elseif ( MSVC_VERSION GREATER 1800 OR MSVC_VERSION EQUAL 1800 )
-  # Visual Studio 2012+ supports c++11 features
-else ()
-    message(FATAL_ERROR "Your C++ compiler does not support C++11.")
-endif ()
-
 # Flatbuffer
 set(flatbuffer-GENERATED_SRC
   ${PROJECT_SOURCE_DIR}/src/Cache/header_generated.h
@@ -119,33 +93,21 @@
 
 add_custom_target(GenerateParser DEPENDS ${PROJECT_SOURCE_DIR}/src/SourceCompile/VObjectTypes.cpp)
 add_custom_command(OUTPUT ${PROJECT_SOURCE_DIR}/src/SourceCompile/VObjectTypes.cpp
+  COMMAND echo "       Parser Generation..."
   COMMAND ${CMAKE_COMMAND} -E make_directory ${PROJECT_SOURCE_DIR}/src/parser/
-  COMMAND java -jar ${ANTLR_JAR_LOCATION} -Werror -Dlanguage=Cpp -listener -visitor -o ${PROJECT_SOURCE_DIR}/src/parser/  ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterParser.g4
+  COMMAND java -jar ${ANTLR_JAR_LOCATION} -Werror -Dlanguage=Cpp -o ${PROJECT_SOURCE_DIR}/src/parser/  ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpLexer.g4  ${PROJECT_SOURCE_DIR}/grammar/SV3_1aLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterParser.g4
+  COMMAND echo "       Serializer, Parser Listener, code generation..."
   COMMAND SourceCompile/generate_parser_listener.tcl ;
   COMMAND API/generate_python_listener_api.tcl ;
+  COMMAND echo "       Python API Generation..."
   COMMAND ${SWIG_EXECUTABLE}  -c++ -python -o API/slapi_wrap.cxx API/slapi.i ;
   COMMAND API/embed_python_api.tcl
   WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/src/"
-  DEPENDS ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterParser.g4 ${PROJECT_SOURCE_DIR}/src/API/slapi.i
+  COMMAND echo "       Code Generation completed"
+  DEPENDS ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterLexer.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aPpParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aParser.g4 ${PROJECT_SOURCE_DIR}/grammar/SV3_1aSplitterParser.g4 ${PROJECT_SOURCE_DIR}/src/API/slapi.i
  )
 
-include_directories(
-  ${PROJECT_SOURCE_DIR}/src/API
-  ${PROJECT_SOURCE_DIR}/src/Design
-  ${PROJECT_SOURCE_DIR}/src/Library
-  ${PROJECT_SOURCE_DIR}/src/parser
-  ${PROJECT_SOURCE_DIR}/src/SourceCompile
-  ${PROJECT_SOURCE_DIR}/src/DesignCompile
-  ${PROJECT_SOURCE_DIR}/src/Testbench
-  ${PROJECT_SOURCE_DIR}/src/CommandLine
-  ${PROJECT_SOURCE_DIR}/src/Common
-  ${PROJECT_SOURCE_DIR}/src/ErrorReporting
-  ${PROJECT_SOURCE_DIR}/src/Utils
-  ${PROJECT_SOURCE_DIR}/src/Cache
-  ${PROJECT_SOURCE_DIR}/src/Config
-  ${PROJECT_SOURCE_DIR}/src/Expression
-  ${PROJECT_SOURCE_DIR}/src/Package
-)
+include_directories(${PROJECT_SOURCE_DIR}/src)
 
 file(GLOB surelog_SRC
   ${PROJECT_SOURCE_DIR}/src/parser/SV3_1aLexer.cpp
@@ -201,14 +163,16 @@
 add_dependencies(surelog GenerateParser)
 add_dependencies(surelog GenerateSerializer)
 
+# Linkage instructions
 target_link_libraries(
   surelog ${PYTHON_LIBRARIES}
- )
-
+)
 target_link_libraries(
   surelog -L${PROJECT_SOURCE_DIR}/dist/ libantlr4-runtime.a -L${PROJECT_SOURCE_DIR}/build/third_party/flatbuffers libflatbuffers.a dl util m rt pthread tcmalloc
 )
 
+# Creation of the distribution directory,
+# Precompiled package creation
 add_custom_command(TARGET surelog POST_BUILD
   COMMAND echo "       Creating staging for precompiled packages"
   COMMAND mkdir -p ${CMAKE_BINARY_DIR}/dist/${CMAKE_BUILD_TYPE}/sv
@@ -231,9 +195,14 @@
  )
 
 
-
-
+# Installation target
 INSTALL(
   TARGETS surelog
   RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 )
+INSTALL(
+  DIRECTORY   ${CMAKE_BINARY_DIR}/dist/${CMAKE_BUILD_TYPE}/python
+              ${CMAKE_BINARY_DIR}/dist/${CMAKE_BUILD_TYPE}/sv
+              ${CMAKE_BINARY_DIR}/dist/${CMAKE_BUILD_TYPE}/pkg
+  DESTINATION ${CMAKE_INSTALL_LIBDIR}/surelog
+)
diff --git a/INSTALL.md b/INSTALL.md
index be04204..48a194c 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -13,10 +13,10 @@
 
 * Please install the following package updates:
 
-   * sudo apt-get install build-essential pkg-config tcsh swig google-perftools python3 python3-dev
+   * sudo apt-get install build-essential pkg-config tcsh swig uuid-dev libgoogle-perftools-dev python3 python3-dev
 
    * If you don't intent to change the grammar:
-     * sudo apt-get install default-jre 
+     * sudo apt-get install default-jre
    * If you do intent to change the grammar:
      * sudo apt-get install default-jdk ant
 
@@ -28,4 +28,3 @@
 * Build
   * make
   * or see [`src/README`](./src/README.md)
-  
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 2643191..2138ba2 100644
--- a/Makefile
+++ b/Makefile
@@ -11,8 +11,9 @@
 	cd build; ../tests/regression.tcl mt=0
 
 clean:
-	rm -rf build;
-	chmod -fR u+rwx dist; rm -rf dist;
+	rm -rf dist;
+	$(MAKE) -C build clean
+	rm -rf build
 
 install:
 	cd build; make install
diff --git a/README.md b/README.md
index ff19cb8..58dba26 100644
--- a/README.md
+++ b/README.md
@@ -34,13 +34,16 @@
 ```bash
 make
 ```
+```bash
+make install (/usr/local/bin and /usr/local/lib/surelog by default, use DESTDIR= for alternative locations)
+```
 
 For more build/test options and system requirements for building see
 [`src/README`](src/README.md) file.
 
 # Surelog commands
- * The executable is located here:
-   * dist/Release/GNU-Linux/surelog
+ * The executable is located here (If not installed in:
+   * build/dist/Release/surelog
 
  * STANDARD VERILOG COMMAND LINE:
    * -f <file>             Accepts a file containing command line arguments
diff --git a/grammar/build.xml b/grammar/build.xml
index 456e1c7..f217507 100644
--- a/grammar/build.xml
+++ b/grammar/build.xml
@@ -24,7 +24,7 @@
 
   <!-- set global properties for this build -->
   <property name="antlr_tool_location"
-	    value="../antlr4/antlr4-4.7.2/tool/target/antlr4-4.7.2-complete.jar"/>
+	    value="../third_party/antlr4/antlr4-4.7.2-complete.jar"/>
   <property name="antlr_tool_target"  value="org.antlr.v4.Tool"/>
   <property name="antlr_test_rig"     value="org.antlr.v4.gui.TestRig"/>
   <property name="sv_parser_grammar"  value="SV3_1a"/>
@@ -47,9 +47,9 @@
   <target name="compile_cpp" depends="init"
         description="compile the Grammar files for C++">
     <!-- Compile the G4 files for C++, only generates C++ files -->
-	<echo>Antlr Compile SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4 </echo>
+	<echo>Antlr Compile SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4 </echo>
         <java  classpath="${antlr_tool_location}" classname="${antlr_tool_target}" fork="true" maxmemory="4096m" >
-          <arg line="${antlr_tool_cpp_options}  SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4" />
+          <arg line="${antlr_tool_cpp_options} SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4" />
         </java>
  
   </target>
@@ -58,30 +58,9 @@
   <target name="compile_java" depends="init"
         description="Compile the Grammar files for Java for Testing purposes">
     <!-- Compile the G4 files for Java target-->
-	<echo>Antlr Compile SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4</echo>
+	<echo>Antlr Compile SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4</echo>
         <java classpath="${antlr_tool_location}" classname="${antlr_tool_target}">
-          <arg line="  SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4" />
-        </java>
-
-  </target>
-
-  <target name="compile_full_cpp" depends="init"
-        description="compile the Grammar files for C++">
-    <!-- Compile the G4 files for C++, only generates C++ files -->
-	<echo>Antlr Compile SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4 </echo>
-        <java  classpath="${antlr_tool_location}" classname="${antlr_tool_target}" fork="true" maxmemory="4096m" >
-          <arg line="${antlr_tool_cpp_options} SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4" />
-        </java>
- 
-  </target>
-
-  
-  <target name="compile_full_java" depends="init"
-        description="Compile the Grammar files for Java for Testing purposes">
-    <!-- Compile the G4 files for Java target-->
-	<echo>Antlr Compile SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aPpLexer.g4  SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4  SV3_1aSplitterParser.g4</echo>
-        <java classpath="${antlr_tool_location}" classname="${antlr_tool_target}">
-          <arg line=" SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4" />
+          <arg line=" SV3_1aPpLexer.g4 SV3_1aPpParser.g4 SV3_1aLexer.g4 SV3_1aParser.g4 SV3_1aSplitterLexer.g4 SV3_1aSplitterParser.g4" />
         </java>
 
   </target>
@@ -95,27 +74,6 @@
          fork="true"/>
   </target>
   
-  <target name="copy_cpp">
-    <!-- Copy generated files to Project area -->
-    <copy todir="../SVIncCompil/parser/">
-      <fileset dir="." includes="*.cpp *.h *.tokens"/>
-    </copy>   
-  </target>
-
-   <target name="copy_pp_cpp">
-    <!-- Copy generated files to Project area -->
-    <copy todir="../SVIncCompil/parser/">
-      <fileset dir="." includes="*Pp*.cpp *Pp*.h *Pp*.tokens"/>
-    </copy>   
-   </target>
-
-   <target name="copy_lib_cpp">
-    <!-- Copy generated files to Project area -->
-    <copy todir="../SVIncCompil/parser/">
-      <fileset dir="." includes="*Lib*.cpp *Lib*.h *Lib*.tokens"/>
-    </copy>   
-  </target> 
-
   <target name="clean"
         description="clean up">
     <!-- Delete the generated files: *.cpp, *.h, *.tokens *.java -->
diff --git a/src/API/PythonAPI.cpp b/src/API/PythonAPI.cpp
index ee445f7..b536da3 100644
--- a/src/API/PythonAPI.cpp
+++ b/src/API/PythonAPI.cpp
@@ -21,23 +21,23 @@
  * Created on May 13, 2017, 4:42 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
 #include "antlr4-runtime.h"
 using namespace std;
 using namespace antlr4;
 
-#include "../parser/SV3_1aParserBaseListener.h"
+#include "parser/SV3_1aParserBaseListener.h"
 
-#include "SV3_1aPythonListener.h"
+#include "API/SV3_1aPythonListener.h"
 
 using namespace SURELOG;
 
@@ -47,13 +47,13 @@
 #include <iostream>
 #include <cstdio>
 #include "Python.h"
-#include "PythonAPI.h"
-#include "SLAPI.h"
-#include "slapi_wrap.cxx"
-#include "slapi.h"
-#include "vobjecttypes_py.h"
+#include "API/PythonAPI.h"
+#include "API/SLAPI.h"
+#include "API/slapi_wrap.cxx"
+#include "API/slapi.h"
+#include "API/vobjecttypes_py.h"
 #include <cstdlib>
-#include "../SourceCompile/PythonListen.h"
+#include "SourceCompile/PythonListen.h"
 
 std::string PythonAPI::m_invalidScriptResult = "INVALID_PYTHON_SCRIPT_RESULT";
 
@@ -199,7 +199,7 @@
           if (i < argc - 1) {
             m_builtinPath = argv[i + 1];
           }
-      } 
+      }
   }
   Py_SetProgramName((wchar_t*)argv[0]); /* optional but recommended */
 
diff --git a/src/API/SLAPI.cpp b/src/API/SLAPI.cpp
index 4aea9f7..fe9735f 100644
--- a/src/API/SLAPI.cpp
+++ b/src/API/SLAPI.cpp
@@ -24,21 +24,21 @@
 #include <string>
 #include <vector>
 
-#include "../ErrorReporting/Waiver.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../Utils/StringUtils.h"
+#include "ErrorReporting/Waiver.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Utils/StringUtils.h"
 
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/PythonListen.h"
-#include "../Design/FileContent.h"
-#include "../Testbench/ClassDefinition.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/PythonListen.h"
+#include "Design/FileContent.h"
+#include "Testbench/ClassDefinition.h"
 #include <cstdlib>
 #include <iostream>
 #include "antlr4-runtime.h"
@@ -46,15 +46,15 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "SV3_1aPythonListener.h"
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
-#include "PythonAPI.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "API/SV3_1aPythonListener.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
+#include "API/PythonAPI.h"
 
-#include "SLAPI.h"
+#include "API/SLAPI.h"
 
 void SURELOG::SLsetWaiver(const char* messageId, const char* fileName,
                           unsigned int line, const char* objectName) {
diff --git a/src/API/SV3_1aPythonListener.cpp b/src/API/SV3_1aPythonListener.cpp
index ca16fdf..7785a87 100644
--- a/src/API/SV3_1aPythonListener.cpp
+++ b/src/API/SV3_1aPythonListener.cpp
@@ -11,15 +11,15 @@
  * 
  * Created on April 16, 2017, 8:28 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/PythonListen.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/PythonListen.h"
 #include <cstdlib>
 #include <iostream>
 #include "antlr4-runtime.h"
@@ -27,14 +27,14 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "SV3_1aPythonListener.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "API/SV3_1aPythonListener.h"
 using namespace antlr4;
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
-#include "PythonAPI.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
+#include "API/PythonAPI.h"
 
 SV3_1aPythonListener::SV3_1aPythonListener (PythonListen* pl, PyThreadState* interpState, antlr4::CommonTokenStream* tokens, unsigned int lineOffset) : 
 m_pl(pl), m_interpState(interpState), m_tokens(tokens), m_lineOffset(lineOffset) { }
diff --git a/src/API/slapi.py b/src/API/slapi.py
index 055221f..9f8524a 100644
--- a/src/API/slapi.py
+++ b/src/API/slapi.py
@@ -1,15 +1,22 @@
 # This file was automatically generated by SWIG (http://www.swig.org).
-# Version 3.0.8
+# Version 3.0.12
 #
 # Do not make changes to this file unless you know what you are doing--modify
 # the SWIG interface file instead.
 
-
-
-
-
-from sys import version_info
-if version_info >= (2, 6, 0):
+from sys import version_info as _swig_python_version_info
+if _swig_python_version_info >= (2, 7, 0):
+    def swig_import_helper():
+        import importlib
+        pkg = __name__.rpartition('.')[0]
+        mname = '.'.join((pkg, '_slapi')).lstrip('.')
+        try:
+            return importlib.import_module(mname)
+        except ImportError:
+            return importlib.import_module('_slapi')
+    _slapi = swig_import_helper()
+    del swig_import_helper
+elif _swig_python_version_info >= (2, 6, 0):
     def swig_import_helper():
         from os.path import dirname
         import imp
@@ -19,22 +26,27 @@
         except ImportError:
             import _slapi
             return _slapi
-        if fp is not None:
-            try:
-                _mod = imp.load_module('_slapi', fp, pathname, description)
-            finally:
+        try:
+            _mod = imp.load_module('_slapi', fp, pathname, description)
+        finally:
+            if fp is not None:
                 fp.close()
-            return _mod
+        return _mod
     _slapi = swig_import_helper()
     del swig_import_helper
 else:
     import _slapi
-del version_info
+del _swig_python_version_info
+
 try:
     _swig_property = property
 except NameError:
     pass  # Python < 2.2 doesn't have 'property'.
 
+try:
+    import builtins as __builtin__
+except ImportError:
+    import __builtin__
 
 def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
     if (name == "thisown"):
@@ -59,37 +71,30 @@
     return _swig_setattr_nondynamic(self, class_type, name, value, 0)
 
 
-def _swig_getattr_nondynamic(self, class_type, name, static=1):
+def _swig_getattr(self, class_type, name):
     if (name == "thisown"):
         return self.this.own()
     method = class_type.__swig_getmethods__.get(name, None)
     if method:
         return method(self)
-    if (not static):
-        return object.__getattr__(self, name)
-    else:
-        raise AttributeError(name)
-
-def _swig_getattr(self, class_type, name):
-    return _swig_getattr_nondynamic(self, class_type, name, 0)
+    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))
 
 
 def _swig_repr(self):
     try:
         strthis = "proxy of " + self.this.__repr__()
-    except Exception:
+    except __builtin__.Exception:
         strthis = ""
     return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
 
 try:
     _object = object
     _newclass = 1
-except AttributeError:
+except __builtin__.Exception:
     class _object:
         pass
     _newclass = 0
 
-
 class SwigPyIterator(_object):
     __swig_setmethods__ = {}
     __setattr__ = lambda self, name, value: _swig_setattr(self, SwigPyIterator, name, value)
@@ -236,7 +241,7 @@
         this = _slapi.new_UIntVector(*args)
         try:
             self.this.append(this)
-        except Exception:
+        except __builtin__.Exception:
             self.this = this
 
     def push_back(self, x):
diff --git a/src/API/slapi_wrap.cxx b/src/API/slapi_wrap.cxx
index a9f81cb..6b260e3 100644
--- a/src/API/slapi_wrap.cxx
+++ b/src/API/slapi_wrap.cxx
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 3.0.8
+ * Version 3.0.12
  *
  * This file is not intended to be easily readable and contains a number of
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -106,9 +106,11 @@
 #endif
 
 /* exporting methods */
-#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
-#  ifndef GCC_HASCLASSVISIBILITY
-#    define GCC_HASCLASSVISIBILITY
+#if defined(__GNUC__)
+#  if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
+#    ifndef GCC_HASCLASSVISIBILITY
+#      define GCC_HASCLASSVISIBILITY
+#    endif
 #  endif
 #endif
 
@@ -668,16 +670,16 @@
     char d = *(c++);
     unsigned char uu;
     if ((d >= '0') && (d <= '9'))
-      uu = ((d - '0') << 4);
+      uu = (unsigned char)((d - '0') << 4);
     else if ((d >= 'a') && (d <= 'f'))
-      uu = ((d - ('a'-10)) << 4);
+      uu = (unsigned char)((d - ('a'-10)) << 4);
     else
       return (char *) 0;
     d = *(c++);
     if ((d >= '0') && (d <= '9'))
-      uu |= (d - '0');
+      uu |= (unsigned char)(d - '0');
     else if ((d >= 'a') && (d <= 'f'))
-      uu |= (d - ('a'-10));
+      uu |= (unsigned char)(d - ('a'-10));
     else
       return (char *) 0;
     *u = uu;
@@ -860,10 +862,6 @@
 }
 #endif
 
-/* Add PyObject_Del for old Pythons */
-#if PY_VERSION_HEX < 0x01060000
-# define PyObject_Del(op) PyMem_DEL((op))
-#endif
 #ifndef PyObject_DEL
 # define PyObject_DEL PyObject_Del
 #endif
@@ -978,6 +976,7 @@
 #if PY_VERSION_HEX < 0x03020000
 #define PyDescr_TYPE(x) (((PyDescrObject *)(x))->d_type)
 #define PyDescr_NAME(x) (((PyDescrObject *)(x))->d_name)
+#define Py_hash_t long
 #endif
 
 /* -----------------------------------------------------------------------------
@@ -1926,7 +1925,6 @@
   static int type_init = 0;
   if (!type_init) {
     const PyTypeObject tmp = {
-      /* PyObject header changed in Python 3 */
 #if PY_VERSION_HEX >= 0x03000000
       PyVarObject_HEAD_INIT(NULL, 0)
 #else
@@ -1937,7 +1935,7 @@
       sizeof(SwigPyObject),                 /* tp_basicsize */
       0,                                    /* tp_itemsize */
       (destructor)SwigPyObject_dealloc,     /* tp_dealloc */
-      0,				    /* tp_print */
+      0,                                    /* tp_print */
 #if PY_VERSION_HEX < 0x02020000
       (getattrfunc)SwigPyObject_getattr,    /* tp_getattr */
 #else
@@ -1945,7 +1943,7 @@
 #endif
       (setattrfunc)0,                       /* tp_setattr */
 #if PY_VERSION_HEX >= 0x03000000
-    0, /* tp_reserved in 3.0.1, tp_compare in 3.0.0 but not used */
+      0, /* tp_reserved in 3.0.1, tp_compare in 3.0.0 but not used */
 #else
       (cmpfunc)SwigPyObject_compare,        /* tp_compare */
 #endif
@@ -1955,7 +1953,7 @@
       0,                                    /* tp_as_mapping */
       (hashfunc)0,                          /* tp_hash */
       (ternaryfunc)0,                       /* tp_call */
-      0,				    /* tp_str */
+      0,                                    /* tp_str */
       PyObject_GenericGetAttr,              /* tp_getattro */
       0,                                    /* tp_setattro */
       0,                                    /* tp_as_buffer */
@@ -2118,7 +2116,6 @@
   static int type_init = 0;
   if (!type_init) {
     const PyTypeObject tmp = {
-      /* PyObject header changed in Python 3 */
 #if PY_VERSION_HEX>=0x03000000
       PyVarObject_HEAD_INIT(NULL, 0)
 #else
@@ -3059,7 +3056,7 @@
 #endif
 #define SWIG_name    "_slapi"
 
-#define SWIGVERSION 0x030008 
+#define SWIGVERSION 0x030012 
 #define SWIG_VERSION SWIGVERSION
 
 
@@ -3152,6 +3149,7 @@
 #endif
 
 
+#include <typeinfo>
 #include <stdexcept>
 
 
@@ -3301,7 +3299,7 @@
     return SWIG_OK;
 #if PY_VERSION_HEX < 0x03000000
   } else if (PyInt_Check(obj)) {
-    if (val) *val = PyInt_AsLong(obj);
+    if (val) *val = (double) PyInt_AsLong(obj);
     return SWIG_OK;
 #endif
   } else if (PyLong_Check(obj)) {
@@ -3422,23 +3420,109 @@
 }
 
 
+#include <limits.h>
+#if !defined(SWIG_NO_LLONG_MAX)
+# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
+#   define LLONG_MAX __LONG_LONG_MAX__
+#   define LLONG_MIN (-LLONG_MAX - 1LL)
+#   define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
+# endif
+#endif
+
+
+#if defined(LLONG_MAX) && !defined(SWIG_LONG_LONG_AVAILABLE)
+#  define SWIG_LONG_LONG_AVAILABLE
+#endif
+
+
+#ifdef SWIG_LONG_LONG_AVAILABLE
+SWIGINTERN int
+SWIG_AsVal_unsigned_SS_long_SS_long (PyObject *obj, unsigned long long *val)
+{
+  int res = SWIG_TypeError;
+  if (PyLong_Check(obj)) {
+    unsigned long long v = PyLong_AsUnsignedLongLong(obj);
+    if (!PyErr_Occurred()) {
+      if (val) *val = v;
+      return SWIG_OK;
+    } else {
+      PyErr_Clear();
+      res = SWIG_OverflowError;
+    }
+  } else {
+    unsigned long v;
+    res = SWIG_AsVal_unsigned_SS_long (obj,&v);
+    if (SWIG_IsOK(res)) {
+      if (val) *val = v;
+      return res;
+    }
+  }
+#ifdef SWIG_PYTHON_CAST_MODE
+  {
+    const double mant_max = 1LL << DBL_MANT_DIG;
+    double d;
+    res = SWIG_AsVal_double (obj,&d);
+    if (SWIG_IsOK(res) && !SWIG_CanCastAsInteger(&d, 0, mant_max))
+      return SWIG_OverflowError;
+    if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, mant_max)) {
+      if (val) *val = (unsigned long long)(d);
+      return SWIG_AddCast(res);
+    }
+    res = SWIG_TypeError;
+  }
+#endif
+  return res;
+}
+#endif
+
+
 SWIGINTERNINLINE int
 SWIG_AsVal_size_t (PyObject * obj, size_t *val)
 {
-  unsigned long v;
-  int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0);
-  if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
+  int res = SWIG_TypeError;
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  if (sizeof(size_t) <= sizeof(unsigned long)) {
+#endif
+    unsigned long v;
+    res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0);
+    if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  } else if (sizeof(size_t) <= sizeof(unsigned long long)) {
+    unsigned long long v;
+    res = SWIG_AsVal_unsigned_SS_long_SS_long (obj, val ? &v : 0);
+    if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
+  }
+#endif
   return res;
 }
 
 
-  #define SWIG_From_long   PyLong_FromLong 
+  #define SWIG_From_long   PyInt_FromLong 
+
+
+#ifdef SWIG_LONG_LONG_AVAILABLE
+SWIGINTERNINLINE PyObject* 
+SWIG_From_long_SS_long  (long long value)
+{
+  return ((value < LONG_MIN) || (value > LONG_MAX)) ?
+    PyLong_FromLongLong(value) : PyInt_FromLong(static_cast< long >(value));
+}
+#endif
 
 
 SWIGINTERNINLINE PyObject *
 SWIG_From_ptrdiff_t  (ptrdiff_t value)
 {    
-  return SWIG_From_long  (static_cast< long >(value));
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  if (sizeof(ptrdiff_t) <= sizeof(long)) {
+#endif
+    return SWIG_From_long  (static_cast< long >(value));
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  } else {
+    /* assume sizeof(ptrdiff_t) <= sizeof(long long) */
+    return SWIG_From_long_SS_long  (static_cast< long long >(value));
+  }
+#endif
 }
 
 
@@ -3492,12 +3576,65 @@
 }
 
 
+#ifdef SWIG_LONG_LONG_AVAILABLE
+SWIGINTERN int
+SWIG_AsVal_long_SS_long (PyObject *obj, long long *val)
+{
+  int res = SWIG_TypeError;
+  if (PyLong_Check(obj)) {
+    long long v = PyLong_AsLongLong(obj);
+    if (!PyErr_Occurred()) {
+      if (val) *val = v;
+      return SWIG_OK;
+    } else {
+      PyErr_Clear();
+      res = SWIG_OverflowError;
+    }
+  } else {
+    long v;
+    res = SWIG_AsVal_long (obj,&v);
+    if (SWIG_IsOK(res)) {
+      if (val) *val = v;
+      return res;
+    }
+  }
+#ifdef SWIG_PYTHON_CAST_MODE
+  {
+    const double mant_max = 1LL << DBL_MANT_DIG;
+    const double mant_min = -mant_max;
+    double d;
+    res = SWIG_AsVal_double (obj,&d);
+    if (SWIG_IsOK(res) && !SWIG_CanCastAsInteger(&d, mant_min, mant_max))
+      return SWIG_OverflowError;
+    if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, mant_min, mant_max)) {
+      if (val) *val = (long long)(d);
+      return SWIG_AddCast(res);
+    }
+    res = SWIG_TypeError;
+  }
+#endif
+  return res;
+}
+#endif
+
+
 SWIGINTERNINLINE int
 SWIG_AsVal_ptrdiff_t (PyObject * obj, ptrdiff_t *val)
 {
-  long v;
-  int res = SWIG_AsVal_long (obj, val ? &v : 0);
-  if (SWIG_IsOK(res) && val) *val = static_cast< ptrdiff_t >(v);
+  int res = SWIG_TypeError;
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  if (sizeof(ptrdiff_t) <= sizeof(long)) {
+#endif
+    long v;
+    res = SWIG_AsVal_long (obj, val ? &v : 0);
+    if (SWIG_IsOK(res) && val) *val = static_cast< ptrdiff_t >(v);
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  } else if (sizeof(ptrdiff_t) <= sizeof(long long)) {
+    long long v;
+    res = SWIG_AsVal_long_SS_long (obj, val ? &v : 0);
+    if (SWIG_IsOK(res) && val) *val = static_cast< ptrdiff_t >(v);
+  }
+#endif
   return res;
 }
 
@@ -3535,8 +3672,21 @@
     return traits<typename noconst_traits<Type >::noconst_type >::type_name();
   }
 
-  template <class Type>
-  struct traits_info {
+  template <class Type> struct traits_info {
+    static swig_type_info *type_query(std::string name) {
+      name += " *";
+      return SWIG_TypeQuery(name.c_str());
+    }
+    static swig_type_info *type_info() {
+      static swig_type_info *info = type_query(type_name<Type>());
+      return info;
+    }
+  };
+
+  /*
+    Partial specialization for pointers (traits_info)
+  */
+  template <class Type> struct traits_info<Type *> {
     static swig_type_info *type_query(std::string name) {
       name += " *";
       return SWIG_TypeQuery(name.c_str());
@@ -3553,7 +3703,7 @@
   }
 
   /*
-    Partial specialization for pointers
+    Partial specialization for pointers (traits)
   */
   template <class Type> struct traits <Type *> {
     typedef pointer_category category;
@@ -3623,7 +3773,8 @@
   struct traits_asptr {   
     static int asptr(PyObject *obj, Type **val) {
       Type *p;
-      int res = SWIG_ConvertPtr(obj, (void**)&p, type_info<Type>(), 0);
+      swig_type_info *descriptor = type_info<Type>();
+      int res = descriptor ? SWIG_ConvertPtr(obj, (void **)&p, descriptor, 0) : SWIG_ERROR;
       if (SWIG_IsOK(res)) {
 	if (val) *val = p;
       }
@@ -3771,7 +3922,7 @@
 
 namespace std {
   template <>
-  struct less <PyObject *>: public binary_function<PyObject *, PyObject *, bool>
+  struct less <PyObject *>
   {
     bool
     operator()(PyObject * v, PyObject *w) const
@@ -3796,7 +3947,7 @@
   };
 
   template <>
-  struct less <swig::SwigPtr_PyObject>: public binary_function<swig::SwigPtr_PyObject, swig::SwigPtr_PyObject, bool>
+  struct less <swig::SwigPtr_PyObject>
   {
     bool
     operator()(const swig::SwigPtr_PyObject& v, const swig::SwigPtr_PyObject& w) const
@@ -3806,7 +3957,7 @@
   };
 
   template <>
-  struct less <swig::SwigVar_PyObject>: public binary_function<swig::SwigVar_PyObject, swig::SwigVar_PyObject, bool>
+  struct less <swig::SwigVar_PyObject>
   {
     bool
     operator()(const swig::SwigVar_PyObject& v, const swig::SwigVar_PyObject& w) const
@@ -3869,7 +4020,7 @@
     if (step == 0) {
       throw std::invalid_argument("slice step cannot be zero");
     } else if (step > 0) {
-      // Required range: 0 <= i < size, 0 <= j < size
+      // Required range: 0 <= i < size, 0 <= j < size, i <= j
       if (i < 0) {
         ii = 0;
       } else if (i < (Difference)size) {
@@ -3877,13 +4028,15 @@
       } else if (insert && (i >= (Difference)size)) {
         ii = (Difference)size;
       }
-      if ( j < 0 ) {
+      if (j < 0) {
         jj = 0;
       } else {
         jj = (j < (Difference)size) ? j : (Difference)size;
       }
+      if (jj < ii)
+        jj = ii;
     } else {
-      // Required range: -1 <= i < size-1, -1 <= j < size-1
+      // Required range: -1 <= i < size-1, -1 <= j < size-1, i >= j
       if (i < -1) {
         ii = -1;
       } else if (i < (Difference) size) {
@@ -3896,6 +4049,8 @@
       } else {
         jj = (j < (Difference)size ) ? j : (Difference)(size-1);
       }
+      if (ii < jj)
+        ii = jj;
     }
   }
 
@@ -3921,6 +4076,13 @@
     seq->erase(position);
   }
 
+  template <class Sequence>
+  struct traits_reserve {
+    static void reserve(Sequence & /*seq*/, typename Sequence::size_type /*n*/) {
+      // This should be specialized for types that support reserve
+    }
+  };
+
   template <class Sequence, class Difference>
   inline Sequence*
   getslice(const Sequence* self, Difference i, Difference j, Py_ssize_t step) {
@@ -3938,6 +4100,7 @@
         return new Sequence(sb, se);
       } else {
         Sequence *sequence = new Sequence();
+        swig::traits_reserve<Sequence>::reserve(*sequence, (jj - ii + step - 1) / step);
         typename Sequence::const_iterator it = sb;
         while (it!=se) {
           sequence->push_back(*it);
@@ -3948,17 +4111,16 @@
       } 
     } else {
       Sequence *sequence = new Sequence();
-      if (ii > jj) {
-        typename Sequence::const_reverse_iterator sb = self->rbegin();
-        typename Sequence::const_reverse_iterator se = self->rbegin();
-        std::advance(sb,size-ii-1);
-        std::advance(se,size-jj-1);
-        typename Sequence::const_reverse_iterator it = sb;
-        while (it!=se) {
-          sequence->push_back(*it);
-          for (Py_ssize_t c=0; c<-step && it!=se; ++c)
-            it++;
-        }
+      swig::traits_reserve<Sequence>::reserve(*sequence, (ii - jj - step - 1) / -step);
+      typename Sequence::const_reverse_iterator sb = self->rbegin();
+      typename Sequence::const_reverse_iterator se = self->rbegin();
+      std::advance(sb,size-ii-1);
+      std::advance(se,size-jj-1);
+      typename Sequence::const_reverse_iterator it = sb;
+      while (it!=se) {
+        sequence->push_back(*it);
+        for (Py_ssize_t c=0; c<-step && it!=se; ++c)
+          it++;
       }
       return sequence;
     }
@@ -3972,12 +4134,11 @@
     Difference jj = 0;
     swig::slice_adjust(i, j, step, size, ii, jj, true);
     if (step > 0) {
-      if (jj < ii)
-        jj = ii;
       if (step == 1) {
         size_t ssize = jj - ii;
         if (ssize <= is.size()) {
           // expanding/staying the same size
+          swig::traits_reserve<Sequence>::reserve(*self, self->size() - ssize + is.size());
           typename Sequence::iterator sb = self->begin();
           typename InputSeq::const_iterator isit = is.begin();
           std::advance(sb,ii);
@@ -4011,8 +4172,6 @@
         }
       }
     } else {
-      if (jj > ii)
-        jj = ii;
       size_t replacecount = (ii - jj - step - 1) / -step;
       if (is.size() != replacecount) {
         char msg[1024];
@@ -4038,37 +4197,33 @@
     Difference jj = 0;
     swig::slice_adjust(i, j, step, size, ii, jj, true);
     if (step > 0) {
-      if (jj > ii) {
-        typename Sequence::iterator sb = self->begin();
-        std::advance(sb,ii);
-        if (step == 1) {
-          typename Sequence::iterator se = self->begin();
-          std::advance(se,jj);
-          self->erase(sb,se);
-        } else {
-          typename Sequence::iterator it = sb;
-          size_t delcount = (jj - ii + step - 1) / step;
-          while (delcount) {
-            it = self->erase(it);
-            for (Py_ssize_t c=0; c<(step-1) && it != self->end(); ++c)
-              it++;
-            delcount--;
-          }
-        }
-      }
-    } else {
-      if (ii > jj) {
-        typename Sequence::reverse_iterator sb = self->rbegin();
-        std::advance(sb,size-ii-1);
-        typename Sequence::reverse_iterator it = sb;
-        size_t delcount = (ii - jj - step - 1) / -step;
+      typename Sequence::iterator sb = self->begin();
+      std::advance(sb,ii);
+      if (step == 1) {
+        typename Sequence::iterator se = self->begin();
+        std::advance(se,jj);
+        self->erase(sb,se);
+      } else {
+        typename Sequence::iterator it = sb;
+        size_t delcount = (jj - ii + step - 1) / step;
         while (delcount) {
-          it = typename Sequence::reverse_iterator(self->erase((++it).base()));
-          for (Py_ssize_t c=0; c<(-step-1) && it != self->rend(); ++c)
+          it = self->erase(it);
+          for (Py_ssize_t c=0; c<(step-1) && it != self->end(); ++c)
             it++;
           delcount--;
         }
       }
+    } else {
+      typename Sequence::reverse_iterator sb = self->rbegin();
+      std::advance(sb,size-ii-1);
+      typename Sequence::reverse_iterator it = sb;
+      size_t delcount = (ii - jj - step - 1) / -step;
+      while (delcount) {
+        it = typename Sequence::reverse_iterator(self->erase((++it).base()));
+        for (Py_ssize_t c=0; c<(-step-1) && it != self->rend(); ++c)
+          it++;
+        delcount--;
+      }
     }
   }
 }
@@ -4524,16 +4679,6 @@
 }
 
 
-#include <limits.h>
-#if !defined(SWIG_NO_LLONG_MAX)
-# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
-#   define LLONG_MAX __LONG_LONG_MAX__
-#   define LLONG_MIN (-LLONG_MAX - 1LL)
-#   define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
-# endif
-#endif
-
-
 SWIGINTERN int
 SWIG_AsVal_unsigned_SS_int (PyObject * obj, unsigned int *val)
 {
@@ -4597,8 +4742,8 @@
     static int asptr(PyObject *obj, sequence **seq) {
       if (obj == Py_None || SWIG_Python_GetSwigThis(obj)) {
 	sequence *p;
-	if (::SWIG_ConvertPtr(obj,(void**)&p,
-			      swig::type_info<sequence>(),0) == SWIG_OK) {
+	swig_type_info *descriptor = swig::type_info<sequence>();
+	if (descriptor && SWIG_IsOK(::SWIG_ConvertPtr(obj, (void **)&p, descriptor, 0))) {
 	  if (seq) *seq = p;
 	  return SWIG_OLDOBJ;
 	}
@@ -4637,7 +4782,7 @@
 #ifdef SWIG_PYTHON_EXTRA_NATIVE_CONTAINERS
       swig_type_info *desc = swig::type_info<sequence>();
       if (desc && desc->clientdata) {
-	return SWIG_NewPointerObj(new sequence(seq), desc, SWIG_POINTER_OWN);
+	return SWIG_InternalNewPointerObj(new sequence(seq), desc, SWIG_POINTER_OWN);
       }
 #endif
       size_type size = seq.size();
@@ -4659,6 +4804,13 @@
 
   namespace swig {
     template <class T>
+    struct traits_reserve<std::vector<T> > {
+      static void reserve(std::vector<T> &seq, typename std::vector<T>::size_type n) {
+        seq.reserve(n);
+      }
+    };
+
+    template <class T>
     struct traits_asptr<std::vector<T> >  {
       static int asptr(PyObject *obj, std::vector<T> **vec) {
 	return traits_asptr_stdseq<std::vector<T> >::asptr(obj, vec);
@@ -4700,14 +4852,33 @@
 SWIG_From_unsigned_SS_long  (unsigned long value)
 {
   return (value > LONG_MAX) ?
-    PyLong_FromUnsignedLong(value) : PyLong_FromLong(static_cast< long >(value)); 
+    PyLong_FromUnsignedLong(value) : PyInt_FromLong(static_cast< long >(value));
 }
 
 
+#ifdef SWIG_LONG_LONG_AVAILABLE
+SWIGINTERNINLINE PyObject* 
+SWIG_From_unsigned_SS_long_SS_long  (unsigned long long value)
+{
+  return (value > LONG_MAX) ?
+    PyLong_FromUnsignedLongLong(value) : PyInt_FromLong(static_cast< long >(value));
+}
+#endif
+
+
 SWIGINTERNINLINE PyObject *
 SWIG_From_size_t  (size_t value)
 {    
-  return SWIG_From_unsigned_SS_long  (static_cast< unsigned long >(value));
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  if (sizeof(size_t) <= sizeof(unsigned long)) {
+#endif
+    return SWIG_From_unsigned_SS_long  (static_cast< unsigned long >(value));
+#ifdef SWIG_LONG_LONG_AVAILABLE
+  } else {
+    /* assume sizeof(size_t) <= sizeof(unsigned long long) */
+    return SWIG_From_unsigned_SS_long_SS_long  (static_cast< unsigned long long >(value));
+  }
+#endif
 }
 
 SWIGINTERN std::vector< unsigned int,std::allocator< unsigned int > > *std_vector_Sl_unsigned_SS_int_Sg____getslice__(std::vector< unsigned int > *self,std::vector< unsigned int >::difference_type i,std::vector< unsigned int >::difference_type j){
@@ -4807,13 +4978,18 @@
 SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
 {
 #if PY_VERSION_HEX>=0x03000000
+#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
+  if (PyBytes_Check(obj))
+#else
   if (PyUnicode_Check(obj))
+#endif
 #else  
   if (PyString_Check(obj))
 #endif
   {
     char *cstr; Py_ssize_t len;
 #if PY_VERSION_HEX>=0x03000000
+#if !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
     if (!alloc && cptr) {
         /* We can't allow converting without allocation, since the internal
            representation of string in Python 3 is UCS-2/UCS-4 but we require
@@ -4822,8 +4998,9 @@
         return SWIG_RuntimeError;
     }
     obj = PyUnicode_AsUTF8String(obj);
-    PyBytes_AsStringAndSize(obj, &cstr, &len);
     if(alloc) *alloc = SWIG_NEWOBJ;
+#endif
+    PyBytes_AsStringAndSize(obj, &cstr, &len);
 #else
     PyString_AsStringAndSize(obj, &cstr, &len);
 #endif
@@ -4844,26 +5021,34 @@
 	if (*alloc == SWIG_NEWOBJ) 
 #endif
 	{
-	  *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
+	  *cptr = reinterpret_cast< char* >(memcpy(new char[len + 1], cstr, sizeof(char)*(len + 1)));
 	  *alloc = SWIG_NEWOBJ;
 	} else {
 	  *cptr = cstr;
 	  *alloc = SWIG_OLDOBJ;
 	}
       } else {
-	#if PY_VERSION_HEX>=0x03000000
-	assert(0); /* Should never reach here in Python 3 */
-	#endif
+#if PY_VERSION_HEX>=0x03000000
+#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
+	*cptr = PyBytes_AsString(obj);
+#else
+	assert(0); /* Should never reach here with Unicode strings in Python 3 */
+#endif
+#else
 	*cptr = SWIG_Python_str_AsChar(obj);
+#endif
       }
     }
     if (psize) *psize = len + 1;
-#if PY_VERSION_HEX>=0x03000000
+#if PY_VERSION_HEX>=0x03000000 && !defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
     Py_XDECREF(obj);
 #endif
     return SWIG_OK;
   } else {
 #if defined(SWIG_PYTHON_2_UNICODE)
+#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
+#error "Cannot use both SWIG_PYTHON_2_UNICODE and SWIG_PYTHON_STRICT_BYTE_CHAR at once"
+#endif
 #if PY_VERSION_HEX<0x03000000
     if (PyUnicode_Check(obj)) {
       char *cstr; Py_ssize_t len;
@@ -4874,7 +5059,7 @@
       if (PyString_AsStringAndSize(obj, &cstr, &len) != -1) {
         if (cptr) {
           if (alloc) *alloc = SWIG_NEWOBJ;
-          *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
+          *cptr = reinterpret_cast< char* >(memcpy(new char[len + 1], cstr, sizeof(char)*(len + 1)));
         }
         if (psize) *psize = len + 1;
 
@@ -4929,11 +5114,15 @@
 	SWIG_InternalNewPointerObj(const_cast< char * >(carray), pchar_descriptor, 0) : SWIG_Py_Void();
     } else {
 #if PY_VERSION_HEX >= 0x03000000
+#if defined(SWIG_PYTHON_STRICT_BYTE_CHAR)
+      return PyBytes_FromStringAndSize(carray, static_cast< Py_ssize_t >(size));
+#else
 #if PY_VERSION_HEX >= 0x03010000
       return PyUnicode_DecodeUTF8(carray, static_cast< Py_ssize_t >(size), "surrogateescape");
 #else
       return PyUnicode_FromStringAndSize(carray, static_cast< Py_ssize_t >(size));
 #endif
+#endif
 #else
       return PyString_FromStringAndSize(carray, static_cast< Py_ssize_t >(size));
 #endif
@@ -5805,7 +5994,7 @@
 
 SWIGINTERN PyObject *SwigPyIterator_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
-  if (!PyArg_ParseTuple(args,(char*)"O:swigregister", &obj)) return NULL;
+  if (!PyArg_ParseTuple(args,(char *)"O:swigregister", &obj)) return NULL;
   SWIG_TypeNewClientData(SWIGTYPE_p_swig__SwigPyIterator, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
@@ -7723,7 +7912,7 @@
 
 SWIGINTERN PyObject *UIntVector_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
-  if (!PyArg_ParseTuple(args,(char*)"O:swigregister", &obj)) return NULL;
+  if (!PyArg_ParseTuple(args,(char *)"O:swigregister", &obj)) return NULL;
   SWIG_TypeNewClientData(SWIGTYPE_p_std__vectorT_unsigned_int_std__allocatorT_unsigned_int_t_t, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
@@ -11595,7 +11784,6 @@
     static int type_init = 0;
     if (!type_init) {
       const PyTypeObject tmp = {
-        /* PyObject header changed in Python 3 */
 #if PY_VERSION_HEX >= 0x03000000
         PyVarObject_HEAD_INIT(NULL, 0)
 #else
@@ -11827,13 +12015,13 @@
   static PyGetSetDef thisown_getset_def = {
     (char *)"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure
   };
-  PyObject *metatype_args;
   PyTypeObject *builtin_pytype;
   int builtin_base_count;
   swig_type_info *builtin_basetype;
   PyObject *tuple;
   PyGetSetDescrObject *static_getset;
   PyTypeObject *metatype;
+  PyTypeObject *swigpyobject;
   SwigPyClientData *cd;
   PyObject *public_interface, *public_symbol;
   PyObject *this_descr;
@@ -11848,14 +12036,9 @@
   (void)static_getset;
   (void)self;
   
-  /* metatype is used to implement static member variables. */
-  metatype_args = Py_BuildValue("(s(O){})", "SwigPyObjectType", &PyType_Type);
-  assert(metatype_args);
-  metatype = (PyTypeObject *) PyType_Type.tp_call((PyObject *) &PyType_Type, metatype_args, NULL);
+  /* Metaclass is used to implement static member variables */
+  metatype = SwigPyObjectType();
   assert(metatype);
-  Py_DECREF(metatype_args);
-  metatype->tp_setattro = (setattrofunc) &SwigPyObjectType_setattro;
-  assert(PyType_Ready(metatype) >= 0);
 #endif
   
   /* Fix SwigMethods to carry the callback ptrs when needed */
@@ -11873,13 +12056,15 @@
   SWIG_InitializeModule(0);
   
 #ifdef SWIGPYTHON_BUILTIN
+  swigpyobject = SwigPyObject_TypeOnce();
+  
   SwigPyObject_stype = SWIG_MangledTypeQuery("_p_SwigPyObject");
   assert(SwigPyObject_stype);
   cd = (SwigPyClientData*) SwigPyObject_stype->clientdata;
   if (!cd) {
     SwigPyObject_stype->clientdata = &SwigPyObject_clientdata;
-    SwigPyObject_clientdata.pytype = SwigPyObject_TypeOnce();
-  } else if (SwigPyObject_TypeOnce()->tp_basicsize != cd->pytype->tp_basicsize) {
+    SwigPyObject_clientdata.pytype = swigpyobject;
+  } else if (swigpyobject->tp_basicsize != cd->pytype->tp_basicsize) {
     PyErr_SetString(PyExc_RuntimeError, "Import error: attempted to load two incompatible swig-generated modules.");
 # if PY_VERSION_HEX >= 0x03000000
     return NULL;
diff --git a/src/API/user.h b/src/API/user.h
index 4e023a1..2f366ba 100644
--- a/src/API/user.h
+++ b/src/API/user.h
@@ -856,7 +856,7 @@
 /**************************** FUNCTION DECLARATIONS ***************************/
 
 /* Include compatibility mode macro definitions. */
-//#include "vpi_compatibility.h"
+//#include "API/vpi_compatibility.h"
 
 /* callback related */
 
diff --git a/src/API/vpi_user.h b/src/API/vpi_user.h
index 4e023a1..2f366ba 100644
--- a/src/API/vpi_user.h
+++ b/src/API/vpi_user.h
@@ -856,7 +856,7 @@
 /**************************** FUNCTION DECLARATIONS ***************************/
 
 /* Include compatibility mode macro definitions. */
-//#include "vpi_compatibility.h"
+//#include "API/vpi_compatibility.h"
 
 /* callback related */
 
diff --git a/src/Cache/Cache.cpp b/src/Cache/Cache.cpp
index eec5dbc..0b3fb5f 100644
--- a/src/Cache/Cache.cpp
+++ b/src/Cache/Cache.cpp
@@ -26,10 +26,10 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <iostream>
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "Cache.h"
-#include "../CommandLine/CommandLineParser.hpp"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Cache/Cache.h"
+#include "CommandLine/CommandLineParser.h"
 #include "flatbuffers/util.h"
 
 using namespace SURELOG;
diff --git a/src/Cache/Cache.h b/src/Cache/Cache.h
index e8535b9..2ee73a4 100644
--- a/src/Cache/Cache.h
+++ b/src/Cache/Cache.h
@@ -25,7 +25,7 @@
 #define CACHE_H
 
 #include "flatbuffers/flatbuffers.h"
-#include "header_generated.h"
+#include "Cache/header_generated.h"
 #include <cstdio>  // For printing and file access.
 
 namespace SURELOG {
diff --git a/src/Cache/PPCache.cpp b/src/Cache/PPCache.cpp
index 7e8eab3..7bfbfe8 100644
--- a/src/Cache/PPCache.cpp
+++ b/src/Cache/PPCache.cpp
@@ -20,24 +20,24 @@
  *
  * Created on April 23, 2017, 8:49 PM
  */
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
-#include "Cache.h"
-#include "PPCache.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
+#include "Cache/Cache.h"
+#include "Cache/PPCache.h"
 #include "flatbuffers/util.h"
 #include <cstdio>
 #include <ctime>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <algorithm>
-#include "../Package/Precompiled.h"
+#include "Package/Precompiled.h"
 using namespace SURELOG;
 
 PPCache::PPCache(PreprocessFile* pp) : m_pp(pp), m_isPrecompiled(false) {}
diff --git a/src/Cache/PPCache.h b/src/Cache/PPCache.h
index 491ea5e..3060f5d 100644
--- a/src/Cache/PPCache.h
+++ b/src/Cache/PPCache.h
@@ -25,9 +25,9 @@
 #define PPCACHE_H
 
 #include "flatbuffers/flatbuffers.h"
-#include "preproc_generated.h"
+#include "Cache/preproc_generated.h"
 #include <cstdio>  // For printing and file access.
-#include "Cache.h"
+#include "Cache/Cache.h"
 
 namespace SURELOG {
 
diff --git a/src/Cache/ParseCache.cpp b/src/Cache/ParseCache.cpp
index 6fbe613..ac51f70 100644
--- a/src/Cache/ParseCache.cpp
+++ b/src/Cache/ParseCache.cpp
@@ -20,25 +20,25 @@
  *
  * Created on April 29, 2017, 4:20 PM
  */
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
-#include "Cache.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
+#include "Cache/Cache.h"
 #include "flatbuffers/util.h"
 #include <cstdio>
 #include <ctime>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include "ParseCache.h"
-#include "../Design/FileContent.h"
-#include "../Package/Precompiled.h"
+#include "Cache/ParseCache.h"
+#include "Design/FileContent.h"
+#include "Package/Precompiled.h"
 using namespace SURELOG;
 
 ParseCache::ParseCache(ParseFile* parser)
diff --git a/src/Cache/ParseCache.h b/src/Cache/ParseCache.h
index 6d8b714..d7c80c8 100644
--- a/src/Cache/ParseCache.h
+++ b/src/Cache/ParseCache.h
@@ -25,9 +25,9 @@
 #define PARSECACHE_H
 
 #include "flatbuffers/flatbuffers.h"
-#include "parser_generated.h"
+#include "Cache/parser_generated.h"
 #include <cstdio>  // For printing and file access.
-#include "Cache.h"
+#include "Cache/Cache.h"
 
 namespace SURELOG {
 
diff --git a/src/Cache/PythonAPICache.cpp b/src/Cache/PythonAPICache.cpp
index 6437d5c..a12148c 100644
--- a/src/Cache/PythonAPICache.cpp
+++ b/src/Cache/PythonAPICache.cpp
@@ -21,17 +21,17 @@
  * Created on May 28, 2017, 10:49 PM
  */
 
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
-#include "Cache.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
+#include "Cache/Cache.h"
 #include "flatbuffers/util.h"
 #include <cstdio>
 #include <ctime>
@@ -41,9 +41,9 @@
 #include "antlr4-runtime.h"
 using namespace antlr4;
 
-#include "../API/PythonAPI.h"
-#include "PythonAPICache.h"
-#include "../SourceCompile/PythonListen.h"
+#include "API/PythonAPI.h"
+#include "Cache/PythonAPICache.h"
+#include "SourceCompile/PythonListen.h"
 
 using namespace SURELOG;
 
diff --git a/src/Cache/PythonAPICache.h b/src/Cache/PythonAPICache.h
index c377582..60197a5 100644
--- a/src/Cache/PythonAPICache.h
+++ b/src/Cache/PythonAPICache.h
@@ -25,9 +25,9 @@
 #define PYTHONAPICACHE_H
 
 #include "flatbuffers/flatbuffers.h"
-#include "python_api_generated.h"
+#include "Cache/python_api_generated.h"
 #include <cstdio>
-#include "Cache.h"
+#include "Cache/Cache.h"
 
 namespace SURELOG {
 
diff --git a/src/CommandLine/CommandLineParser.cpp b/src/CommandLine/CommandLineParser.cpp
index 9b7e855..7ba34ca 100644
--- a/src/CommandLine/CommandLineParser.cpp
+++ b/src/CommandLine/CommandLineParser.cpp
@@ -27,14 +27,14 @@
 #include <sstream>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include "CommandLineParser.hpp"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
+#include "CommandLine/CommandLineParser.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
 
 #include "antlr4-runtime.h"
 using namespace antlr4;
 
-#include "../API/PythonAPI.h"
+#include "API/PythonAPI.h"
 
 #include <ctime>
 #include <thread>
diff --git a/src/CommandLine/CommandLineParser.hpp b/src/CommandLine/CommandLineParser.h
similarity index 98%
rename from src/CommandLine/CommandLineParser.hpp
rename to src/CommandLine/CommandLineParser.h
index 7ebe7bd..cec2ed5 100644
--- a/src/CommandLine/CommandLineParser.hpp
+++ b/src/CommandLine/CommandLineParser.h
@@ -26,8 +26,8 @@
 #include <string>
 #include <vector>
 #include <map>
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/ErrorContainer.h"
 
 namespace SURELOG {
 
diff --git a/src/Common/ClockingBlockHolder.cpp b/src/Common/ClockingBlockHolder.cpp
index 99b33ef..70b6c2b 100644
--- a/src/Common/ClockingBlockHolder.cpp
+++ b/src/Common/ClockingBlockHolder.cpp
@@ -21,7 +21,7 @@
  * Created on June 1, 2018, 9:08 PM
  */
 
-#include "ClockingBlockHolder.h"
+#include "Common/ClockingBlockHolder.h"
 
 using namespace SURELOG;
 
diff --git a/src/Common/ClockingBlockHolder.h b/src/Common/ClockingBlockHolder.h
index ee6fc73..24d1d6d 100644
--- a/src/Common/ClockingBlockHolder.h
+++ b/src/Common/ClockingBlockHolder.h
@@ -24,9 +24,9 @@
 #ifndef CLOCKINGBLOCKHOLDER_H
 #define CLOCKINGBLOCKHOLDER_H
 #include <map>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/Signal.h"
-#include "../Design/ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/Signal.h"
+#include "Design/ClockingBlock.h"
 
 namespace SURELOG {
 
diff --git a/src/Config/Config.cpp b/src/Config/Config.cpp
index be559f4..c7376ce 100644
--- a/src/Config/Config.cpp
+++ b/src/Config/Config.cpp
@@ -20,9 +20,9 @@
  *
  * Created on February 10, 2018, 11:09 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "Config.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Config/Config.h"
 using namespace SURELOG;
 
 Config::~Config() {}
diff --git a/src/Config/ConfigSet.cpp b/src/Config/ConfigSet.cpp
index c88e02b..8439cc0 100644
--- a/src/Config/ConfigSet.cpp
+++ b/src/Config/ConfigSet.cpp
@@ -20,9 +20,9 @@
  *
  * Created on February 10, 2018, 11:14 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "ConfigSet.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Config/ConfigSet.h"
 using namespace SURELOG;
 
 ConfigSet::~ConfigSet() {}
diff --git a/src/Config/ConfigSet.h b/src/Config/ConfigSet.h
index e999c49..5eabd78 100644
--- a/src/Config/ConfigSet.h
+++ b/src/Config/ConfigSet.h
@@ -23,7 +23,7 @@
 
 #ifndef CONFIGSET_H
 #define CONFIGSET_H
-#include "Config.h"
+#include "Config/Config.h"
 #include <vector>
 
 namespace SURELOG {
diff --git a/src/Design/ClockingBlock.cpp b/src/Design/ClockingBlock.cpp
index 5e012fc..ef42526 100644
--- a/src/Design/ClockingBlock.cpp
+++ b/src/Design/ClockingBlock.cpp
@@ -20,10 +20,10 @@
  *
  * Created on May 26, 2018, 11:07 AM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "Signal.h"
-#include "ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/Signal.h"
+#include "Design/ClockingBlock.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/DataType.cpp b/src/Design/DataType.cpp
index b8d931e..326ddb8 100644
--- a/src/Design/DataType.cpp
+++ b/src/Design/DataType.cpp
@@ -20,10 +20,10 @@
  *
  * Created on June 14, 2018, 10:07 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "../Expression/Value.h"
-#include "DataType.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Expression/Value.h"
+#include "Design/DataType.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/DefParam.cpp b/src/Design/DefParam.cpp
index 3f3dbc1..2e8f718 100644
--- a/src/Design/DefParam.cpp
+++ b/src/Design/DefParam.cpp
@@ -21,10 +21,10 @@
  * Created on January 7, 2018, 8:55 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../Library/Library.h"
-#include "FileContent.h"
-#include "DefParam.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "Design/DefParam.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/DefParam.h b/src/Design/DefParam.h
index 6be1311..8af25d9 100644
--- a/src/Design/DefParam.h
+++ b/src/Design/DefParam.h
@@ -23,7 +23,7 @@
 
 #ifndef DEFPARAM_H
 #define DEFPARAM_H
-#include "../Expression/Value.h"
+#include "Expression/Value.h"
 #include <map>
 
 namespace SURELOG {
diff --git a/src/Design/Design.cpp b/src/Design/Design.cpp
index 40b4867..e7f32b5 100644
--- a/src/Design/Design.cpp
+++ b/src/Design/Design.cpp
@@ -22,23 +22,23 @@
  */
 #include <queue>
 #include <set>
-#include "../Utils/StringUtils.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../Utils/FileUtils.h"
-#include "Design.h"
-#include "../Testbench/ClassDefinition.h"
+#include "Utils/StringUtils.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Utils/FileUtils.h"
+#include "Design/Design.h"
+#include "Testbench/ClassDefinition.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Design.h b/src/Design/Design.h
index 1fbd958..d22dba4 100644
--- a/src/Design/Design.h
+++ b/src/Design/Design.h
@@ -23,13 +23,13 @@
 
 #ifndef DESIGN_H
 #define DESIGN_H
-#include "ModuleDefinition.h"
-#include "ModuleInstance.h"
-#include "DefParam.h"
-#include "../Library/LibrarySet.h"
-#include "../Config/ConfigSet.h"
-#include "../Package/Package.h"
-#include "../Testbench/Program.h"
+#include "Design/ModuleDefinition.h"
+#include "Design/ModuleInstance.h"
+#include "Design/DefParam.h"
+#include "Library/LibrarySet.h"
+#include "Config/ConfigSet.h"
+#include "Package/Package.h"
+#include "Testbench/Program.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/DesignComponent.cpp b/src/Design/DesignComponent.cpp
index 32e4117..148fbb6 100644
--- a/src/Design/DesignComponent.cpp
+++ b/src/Design/DesignComponent.cpp
@@ -21,12 +21,12 @@
  * Created on March 25, 2018, 10:27 PM
  */
 #include <vector>
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "FileContent.h"
-#include "DesignComponent.h"
-#include "Function.h"
-#include "../Testbench/Variable.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/FileContent.h"
+#include "Design/DesignComponent.h"
+#include "Design/Function.h"
+#include "Testbench/Variable.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/DesignComponent.h b/src/Design/DesignComponent.h
index 31625dc..fcfd01a 100644
--- a/src/Design/DesignComponent.h
+++ b/src/Design/DesignComponent.h
@@ -25,11 +25,11 @@
 #define DESIGNCOMPONENT_H
 #include <vector>
 #include <map>
-#include "../SourceCompile/VObjectTypes.h"
-#include "FileCNodeId.h"
-#include "DataType.h"
-#include "../Testbench/TypeDef.h"
-#include "ValuedComponentI.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/FileCNodeId.h"
+#include "Design/DataType.h"
+#include "Testbench/TypeDef.h"
+#include "Design/ValuedComponentI.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/DesignElement.cpp b/src/Design/DesignElement.cpp
index c25bc10..9a975bf 100644
--- a/src/Design/DesignElement.cpp
+++ b/src/Design/DesignElement.cpp
@@ -20,9 +20,9 @@
  *
  * Created on June 8, 2017, 8:05 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "TimeInfo.h"
-#include "DesignElement.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Enum.cpp b/src/Design/Enum.cpp
index 75d533e..1d9ccd6 100644
--- a/src/Design/Enum.cpp
+++ b/src/Design/Enum.cpp
@@ -20,9 +20,9 @@
  *
  * Created on May 19, 2019, 11:55 AM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "Enum.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/Enum.h"
 using namespace SURELOG;
 
 Enum::Enum(std::string name, FileContent* fC, NodeId nodeId,
diff --git a/src/Design/Enum.h b/src/Design/Enum.h
index 83e0814..2ab5256 100644
--- a/src/Design/Enum.h
+++ b/src/Design/Enum.h
@@ -25,7 +25,7 @@
 #define ENUM_H
 #include <string>
 #include <map>
-#include "DataType.h"
+#include "Design/DataType.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/FileCNodeId.h b/src/Design/FileCNodeId.h
index 05a5562..cc286ee 100644
--- a/src/Design/FileCNodeId.h
+++ b/src/Design/FileCNodeId.h
@@ -24,7 +24,7 @@
 #ifndef FILECNODEID_H
 #define FILECNODEID_H
 
-#include "../SourceCompile/SymbolTable.h"
+#include "SourceCompile/SymbolTable.h"
 
 namespace SURELOG {
 class FileContent;
diff --git a/src/Design/FileContent.cpp b/src/Design/FileContent.cpp
index 30c6f88..5eb50ec 100644
--- a/src/Design/FileContent.cpp
+++ b/src/Design/FileContent.cpp
@@ -21,12 +21,12 @@
  * Created on June 8, 2017, 8:22 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "TimeInfo.h"
-#include "DesignElement.h"
-#include "../Library/Library.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
+#include "Library/Library.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Design/FileContent.h"
 #include <queue>
 #include <iostream>
 #include <stack>
diff --git a/src/Design/FileContent.h b/src/Design/FileContent.h
index 06378e1..a0c0136 100644
--- a/src/Design/FileContent.h
+++ b/src/Design/FileContent.h
@@ -26,12 +26,12 @@
 #include <vector>
 #include <map>
 #include <unordered_set>
-#include "TimeInfo.h"
-#include "DesignElement.h"
-#include "DesignComponent.h"
-#include "ValuedComponentI.h"
-#include "VObject.h"
-#include "../SourceCompile/VObjectTypes.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
+#include "Design/DesignComponent.h"
+#include "Design/ValuedComponentI.h"
+#include "Design/VObject.h"
+#include "SourceCompile/VObjectTypes.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Function.cpp b/src/Design/Function.cpp
index 69bc44b..df957d1 100644
--- a/src/Design/Function.cpp
+++ b/src/Design/Function.cpp
@@ -21,7 +21,7 @@
  * Created on February 21, 2019, 8:19 PM
  */
 
-#include "Function.h"
+#include "Design/Function.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Function.h b/src/Design/Function.h
index abdeceb..007391f 100644
--- a/src/Design/Function.h
+++ b/src/Design/Function.h
@@ -24,15 +24,15 @@
 #ifndef FUNCTION_H
 #define FUNCTION_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "DataType.h"
-#include "Scope.h"
-#include "TfPortItem.h"
-#include "Statement.h"
-#include "../Testbench/Variable.h"
-#include "../DesignCompile/CompileHelper.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/DataType.h"
+#include "Design/Scope.h"
+#include "Design/TfPortItem.h"
+#include "Design/Statement.h"
+#include "Testbench/Variable.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Instance.cpp b/src/Design/Instance.cpp
index 405fec5..948bcbb 100644
--- a/src/Design/Instance.cpp
+++ b/src/Design/Instance.cpp
@@ -21,7 +21,7 @@
  * Created on September 6, 2017, 10:57 PM
  */
 
-#include "Instance.h"
+#include "Design/Instance.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/ModuleDefinition.cpp b/src/Design/ModuleDefinition.cpp
index 8c4747d..89da227 100644
--- a/src/Design/ModuleDefinition.cpp
+++ b/src/Design/ModuleDefinition.cpp
@@ -21,10 +21,10 @@
  * Created on October 20, 2017, 10:29 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../Library/Library.h"
-#include "FileContent.h"
-#include "ModuleDefinition.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "Design/ModuleDefinition.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/ModuleDefinition.h b/src/Design/ModuleDefinition.h
index bd6dacf..9cd7d3b 100644
--- a/src/Design/ModuleDefinition.h
+++ b/src/Design/ModuleDefinition.h
@@ -24,12 +24,12 @@
 #ifndef MODULEDEFINITION_H
 #define MODULEDEFINITION_H
 #include <vector>
-#include "DesignComponent.h"
-#include "ValuedComponentI.h"
-#include "Signal.h"
-#include "ClockingBlock.h"
-#include "DataType.h"
-#include "../Common/ClockingBlockHolder.h"
+#include "Design/DesignComponent.h"
+#include "Design/ValuedComponentI.h"
+#include "Design/Signal.h"
+#include "Design/ClockingBlock.h"
+#include "Design/DataType.h"
+#include "Common/ClockingBlockHolder.h"
 
 namespace SURELOG {
 class CompileModule;
diff --git a/src/Design/ModuleInstance.cpp b/src/Design/ModuleInstance.cpp
index b86f778..ab5cb61 100644
--- a/src/Design/ModuleInstance.cpp
+++ b/src/Design/ModuleInstance.cpp
@@ -22,11 +22,11 @@
  */
 #include <string>
 #include <iostream>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Library/Library.h"
-#include "FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
 
-#include "ModuleInstance.h"
+#include "Design/ModuleInstance.h"
 using namespace SURELOG;
 
 ModuleInstance::ModuleInstance(DesignComponent* moduleDefinition,
diff --git a/src/Design/ModuleInstance.h b/src/Design/ModuleInstance.h
index 6675912..a0cce68 100644
--- a/src/Design/ModuleInstance.h
+++ b/src/Design/ModuleInstance.h
@@ -24,10 +24,10 @@
 #ifndef MODULEINSTANCE_H
 #define MODULEINSTANCE_H
 
-#include "ModuleDefinition.h"
-#include "../Expression/Value.h"
-#include "../Expression/ExprBuilder.h"
-#include "ValuedComponentI.h"
+#include "Design/ModuleDefinition.h"
+#include "Expression/Value.h"
+#include "Expression/ExprBuilder.h"
+#include "Design/ValuedComponentI.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Parameter.cpp b/src/Design/Parameter.cpp
index 7b22915..c81a6e7 100644
--- a/src/Design/Parameter.cpp
+++ b/src/Design/Parameter.cpp
@@ -21,7 +21,7 @@
  * Created on April 15, 2019, 8:03 PM
  */
 
-#include "Parameter.h"
+#include "Design/Parameter.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Parameter.h b/src/Design/Parameter.h
index d58338b..2b8ab5e 100644
--- a/src/Design/Parameter.h
+++ b/src/Design/Parameter.h
@@ -24,8 +24,8 @@
 #ifndef PARAMETER_H
 #define PARAMETER_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Scope.cpp b/src/Design/Scope.cpp
index 671079c..3f16017 100644
--- a/src/Design/Scope.cpp
+++ b/src/Design/Scope.cpp
@@ -21,7 +21,7 @@
  * Created on August 31, 2019, 11:24 AM
  */
 
-#include "Scope.h"
+#include "Design/Scope.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Scope.h b/src/Design/Scope.h
index bd6757b..34d9431 100644
--- a/src/Design/Scope.h
+++ b/src/Design/Scope.h
@@ -24,13 +24,13 @@
 #ifndef SCOPE_H
 #define SCOPE_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "DataType.h"
-#include "TfPortItem.h"
-#include "../Testbench/Variable.h"
-#include "../DesignCompile/CompileHelper.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/DataType.h"
+#include "Design/TfPortItem.h"
+#include "Testbench/Variable.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Signal.cpp b/src/Design/Signal.cpp
index 144ed8c..6834dc5 100644
--- a/src/Design/Signal.cpp
+++ b/src/Design/Signal.cpp
@@ -20,9 +20,9 @@
  *
  * Created on May 6, 2018, 5:32 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "Signal.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/Signal.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Signal.h b/src/Design/Signal.h
index 9bdd403..e6821ca 100644
--- a/src/Design/Signal.h
+++ b/src/Design/Signal.h
@@ -24,7 +24,7 @@
 #ifndef SIGNAL_H
 #define SIGNAL_H
 
-#include "FileContent.h"
+#include "Design/FileContent.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Statement.cpp b/src/Design/Statement.cpp
index b057995..1b95299 100644
--- a/src/Design/Statement.cpp
+++ b/src/Design/Statement.cpp
@@ -21,7 +21,7 @@
  * Created on May 25, 2019, 11:34 AM
  */
 
-#include "Statement.h"
+#include "Design/Statement.h"
 using namespace SURELOG;
 
 Statement::~Statement() {}
diff --git a/src/Design/Statement.h b/src/Design/Statement.h
index 35a036c..d200355 100644
--- a/src/Design/Statement.h
+++ b/src/Design/Statement.h
@@ -24,11 +24,11 @@
 #ifndef STATEMENT_H
 #define STATEMENT_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "DataType.h"
-#include "Scope.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/DataType.h"
+#include "Design/Scope.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/Task.cpp b/src/Design/Task.cpp
index c4bcf63..92be2f1 100644
--- a/src/Design/Task.cpp
+++ b/src/Design/Task.cpp
@@ -21,7 +21,7 @@
  * Created on February 21, 2019, 8:19 PM
  */
 
-#include "Task.h"
+#include "Design/Task.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/Task.h b/src/Design/Task.h
index fa4bfe4..67d3345 100644
--- a/src/Design/Task.h
+++ b/src/Design/Task.h
@@ -24,9 +24,9 @@
 #ifndef TASK_H
 #define TASK_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "Function.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/Function.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/TfPortItem.cpp b/src/Design/TfPortItem.cpp
index 97f453e..2255eb0 100644
--- a/src/Design/TfPortItem.cpp
+++ b/src/Design/TfPortItem.cpp
@@ -22,11 +22,11 @@
  */
 
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Expression/Value.h"
-#include "DesignComponent.h"
-#include "FileContent.h"
-#include "TfPortItem.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Expression/Value.h"
+#include "Design/DesignComponent.h"
+#include "Design/FileContent.h"
+#include "Design/TfPortItem.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/TfPortItem.h b/src/Design/TfPortItem.h
index bcb3f99..96927d2 100644
--- a/src/Design/TfPortItem.h
+++ b/src/Design/TfPortItem.h
@@ -24,7 +24,7 @@
 #ifndef TFPORTITEM_H
 #define TFPORTITEM_H
 
-#include "../Testbench/Variable.h"
+#include "Testbench/Variable.h"
 
 namespace SURELOG {
 class Procedure;
diff --git a/src/Design/TimeInfo.cpp b/src/Design/TimeInfo.cpp
index 1efb73a..e30834d 100644
--- a/src/Design/TimeInfo.cpp
+++ b/src/Design/TimeInfo.cpp
@@ -21,8 +21,8 @@
  * Created on June 8, 2017, 8:27 PM
  */
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "TimeInfo.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/VObject.cpp b/src/Design/VObject.cpp
index 79c595a..5089762 100644
--- a/src/Design/VObject.cpp
+++ b/src/Design/VObject.cpp
@@ -21,8 +21,8 @@
  * Created on June 14, 2017, 10:58 PM
  */
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "VObject.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/VObject.h"
 
 using namespace SURELOG;
 
diff --git a/src/Design/VObject.h b/src/Design/VObject.h
index b7a645b..ebdc016 100644
--- a/src/Design/VObject.h
+++ b/src/Design/VObject.h
@@ -24,8 +24,8 @@
 #ifndef VOBJECT_H
 #define VOBJECT_H
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/VObjectTypes.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/VObjectTypes.h"
 
 namespace SURELOG {
 
diff --git a/src/Design/ValuedComponentI.cpp b/src/Design/ValuedComponentI.cpp
index a49d58b..e95e366 100644
--- a/src/Design/ValuedComponentI.cpp
+++ b/src/Design/ValuedComponentI.cpp
@@ -22,8 +22,8 @@
  */
 
 #include <string>
-#include "../Expression/ExprBuilder.h"
-#include "ValuedComponentI.h"
+#include "Expression/ExprBuilder.h"
+#include "Design/ValuedComponentI.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/Builtin.cpp b/src/DesignCompile/Builtin.cpp
index 7d578a2..af15f1b 100644
--- a/src/DesignCompile/Builtin.cpp
+++ b/src/DesignCompile/Builtin.cpp
@@ -20,28 +20,28 @@
  *
  * Created on May 30, 2019, 6:36 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/Signal.h"
-#include "../Design/FileContent.h"
-#include "../Design/ClockingBlock.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../DesignCompile/CompileDesign.h"
-#include "../Testbench/ClassDefinition.h"
-#include "CompileClass.h"
-#include "Builtin.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/Signal.h"
+#include "Design/FileContent.h"
+#include "Design/ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/CompileClass.h"
+#include "DesignCompile/Builtin.h"
 using namespace SURELOG;
 
 Builtin::~Builtin() {}
diff --git a/src/DesignCompile/CompileClass.cpp b/src/DesignCompile/CompileClass.cpp
index 79c807e..fc96c3e 100644
--- a/src/DesignCompile/CompileClass.cpp
+++ b/src/DesignCompile/CompileClass.cpp
@@ -20,27 +20,27 @@
  *
  * Created on June 7, 2018, 10:26 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/Signal.h"
-#include "../Design/FileContent.h"
-#include "../Design/ClockingBlock.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../DesignCompile/CompileDesign.h"
-#include "../Testbench/ClassDefinition.h"
-#include "CompileClass.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/Signal.h"
+#include "Design/FileContent.h"
+#include "Design/ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/CompileClass.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileClass.h b/src/DesignCompile/CompileClass.h
index ec1ad44..938242e 100644
--- a/src/DesignCompile/CompileClass.h
+++ b/src/DesignCompile/CompileClass.h
@@ -24,7 +24,7 @@
 #ifndef COMPILECLASS_H
 #define COMPILECLASS_H
 
-#include "CompileHelper.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/CompileDesign.cpp b/src/DesignCompile/CompileDesign.cpp
index e4adaed..bfbf170 100644
--- a/src/DesignCompile/CompileDesign.cpp
+++ b/src/DesignCompile/CompileDesign.cpp
@@ -20,32 +20,32 @@
  *
  * Created on July 1, 2017, 1:11 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/ParseFile.h"
-#include "../Testbench/ClassDefinition.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "ResolveSymbols.h"
-#include "DesignElaboration.h"
-#include "UVMElaboration.h"
-#include "CompilePackage.h"
-#include "CompileModule.h"
-#include "CompileFileContent.h"
-#include "CompileProgram.h"
-#include "CompileClass.h"
-#include "Builtin.h"
-#include "PackageAndRootElaboration.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/ParseFile.h"
+#include "Testbench/ClassDefinition.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/ResolveSymbols.h"
+#include "DesignCompile/DesignElaboration.h"
+#include "DesignCompile/UVMElaboration.h"
+#include "DesignCompile/CompilePackage.h"
+#include "DesignCompile/CompileModule.h"
+#include "DesignCompile/CompileFileContent.h"
+#include "DesignCompile/CompileProgram.h"
+#include "DesignCompile/CompileClass.h"
+#include "DesignCompile/Builtin.h"
+#include "DesignCompile/PackageAndRootElaboration.h"
 
 #ifdef USETBB
 #include <tbb/task.h>
diff --git a/src/DesignCompile/CompileFileContent.cpp b/src/DesignCompile/CompileFileContent.cpp
index 7fb4e7e..4aff41c 100644
--- a/src/DesignCompile/CompileFileContent.cpp
+++ b/src/DesignCompile/CompileFileContent.cpp
@@ -20,25 +20,25 @@
  *
  * Created on March 28, 2018, 10:16 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "CompileFileContent.h"
-#include "CompileHelper.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/CompileFileContent.h"
+#include "DesignCompile/CompileHelper.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileFileContent.h b/src/DesignCompile/CompileFileContent.h
index 6823b40..c9f235e 100644
--- a/src/DesignCompile/CompileFileContent.h
+++ b/src/DesignCompile/CompileFileContent.h
@@ -24,7 +24,7 @@
 #ifndef COMPILEFILECONTENT_H
 #define COMPILEFILECONTENT_H
 
-#include "CompileHelper.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/CompileHelper.cpp b/src/DesignCompile/CompileHelper.cpp
index 08c3ad0..20d1b51 100644
--- a/src/DesignCompile/CompileHelper.cpp
+++ b/src/DesignCompile/CompileHelper.cpp
@@ -21,18 +21,18 @@
  * Created on May 14, 2019, 8:03 PM
  */
 
-#include "../Expression/Value.h"
-#include "../Expression/ExprBuilder.h"
-#include "../Design/Enum.h"
-#include "../Design/Function.h"
-#include "../Testbench/Property.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Design/Design.h"
-#include "CompileHelper.h"
+#include "Expression/Value.h"
+#include "Expression/ExprBuilder.h"
+#include "Design/Enum.h"
+#include "Design/Function.h"
+#include "Testbench/Property.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Design/Design.h"
+#include "DesignCompile/CompileHelper.h"
 #include <iostream>
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileHelper.h b/src/DesignCompile/CompileHelper.h
index 368a909..b1d0252 100644
--- a/src/DesignCompile/CompileHelper.h
+++ b/src/DesignCompile/CompileHelper.h
@@ -24,13 +24,13 @@
 #ifndef COMPILEHELPER_H
 #define COMPILEHELPER_H
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/DataType.h"
-#include "../Design/TfPortItem.h"
-#include "../Expression/ExprBuilder.h"
-#include "../ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/DataType.h"
+#include "Design/TfPortItem.h"
+#include "Expression/ExprBuilder.h"
+#include "ErrorReporting/ErrorContainer.h"
 
 namespace SURELOG {
 class Scope;
diff --git a/src/DesignCompile/CompileModule.cpp b/src/DesignCompile/CompileModule.cpp
index 0802487..9c6e525 100644
--- a/src/DesignCompile/CompileModule.cpp
+++ b/src/DesignCompile/CompileModule.cpp
@@ -21,28 +21,28 @@
  * Created on March 22, 2018, 9:43 PM
  */
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/Signal.h"
-#include "../Design/FileContent.h"
-#include "../Design/ClockingBlock.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Testbench/ClassDefinition.h"
-#include "CompileHelper.h"
-#include "CompileDesign.h"
-#include "CompileModule.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/Signal.h"
+#include "Design/FileContent.h"
+#include "Design/ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/CompileHelper.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/CompileModule.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileModule.h b/src/DesignCompile/CompileModule.h
index af912ea..ae3ab4d 100644
--- a/src/DesignCompile/CompileModule.h
+++ b/src/DesignCompile/CompileModule.h
@@ -24,7 +24,7 @@
 #ifndef COMPILEMODULE_H
 #define COMPILEMODULE_H
 
-#include "CompileHelper.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/CompilePackage.cpp b/src/DesignCompile/CompilePackage.cpp
index 9a9cdd7..6591337 100644
--- a/src/DesignCompile/CompilePackage.cpp
+++ b/src/DesignCompile/CompilePackage.cpp
@@ -21,26 +21,26 @@
  * Created on March 22, 2018, 9:57 PM
  */
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Design/Statement.h"
-#include "CompileDesign.h"
-#include "CompileHelper.h"
-#include "CompilePackage.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Design/Statement.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/CompileHelper.h"
+#include "DesignCompile/CompilePackage.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileProgram.cpp b/src/DesignCompile/CompileProgram.cpp
index f9aa3ef..1a5a158 100644
--- a/src/DesignCompile/CompileProgram.cpp
+++ b/src/DesignCompile/CompileProgram.cpp
@@ -20,28 +20,28 @@
  *
  * Created on June 6, 2018, 10:43 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/Signal.h"
-#include "../Design/FileContent.h"
-#include "../Design/ClockingBlock.h"
-#include "../Testbench/ClassDefinition.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileHelper.h"
-#include "CompileDesign.h"
-#include "CompileProgram.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/Signal.h"
+#include "Design/FileContent.h"
+#include "Design/ClockingBlock.h"
+#include "Testbench/ClassDefinition.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileHelper.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/CompileProgram.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileProgram.h b/src/DesignCompile/CompileProgram.h
index aac270c..980b056 100644
--- a/src/DesignCompile/CompileProgram.h
+++ b/src/DesignCompile/CompileProgram.h
@@ -24,8 +24,8 @@
 #ifndef COMPILEPROGRAM_H
 #define COMPILEPROGRAM_H
 
-#include "CompileToolbox.h"
-#include "CompileHelper.h"
+#include "DesignCompile/CompileToolbox.h"
+#include "DesignCompile/CompileHelper.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/CompileStep.cpp b/src/DesignCompile/CompileStep.cpp
index d176beb..1d6a3fb 100644
--- a/src/DesignCompile/CompileStep.cpp
+++ b/src/DesignCompile/CompileStep.cpp
@@ -21,7 +21,7 @@
  * Created on July 5, 2017, 10:44 PM
  */
 
-#include "CompileStep.h"
+#include "DesignCompile/CompileStep.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/CompileStep.h b/src/DesignCompile/CompileStep.h
index e675a63..ae34f22 100644
--- a/src/DesignCompile/CompileStep.h
+++ b/src/DesignCompile/CompileStep.h
@@ -23,7 +23,7 @@
 
 #ifndef COMPILESTEP_H
 #define COMPILESTEP_H
-#include "../Design/VObject.h"
+#include "Design/VObject.h"
 namespace SURELOG {
 
 class CompileStep {
diff --git a/src/DesignCompile/CompileToolbox.cpp b/src/DesignCompile/CompileToolbox.cpp
index 195b9d8..aea9b6f 100644
--- a/src/DesignCompile/CompileToolbox.cpp
+++ b/src/DesignCompile/CompileToolbox.cpp
@@ -20,26 +20,26 @@
  *
  * Created on June 13, 2018, 9:36 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/Signal.h"
-#include "../Design/FileContent.h"
-#include "../Design/ClockingBlock.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "CompileToolbox.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/Signal.h"
+#include "Design/FileContent.h"
+#include "Design/ClockingBlock.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/CompileToolbox.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/DesignElaboration.cpp b/src/DesignCompile/DesignElaboration.cpp
index 1615d6d..5862de4 100644
--- a/src/DesignCompile/DesignElaboration.cpp
+++ b/src/DesignCompile/DesignElaboration.cpp
@@ -20,29 +20,29 @@
  *
  * Created on July 12, 2017, 8:55 PM
  */
-#include "../Utils/StringUtils.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../Config/ConfigSet.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "../Testbench/Property.h"
-#include "../Design/Function.h"
-#include "../Testbench/ClassDefinition.h"
-#include "DesignElaboration.h"
+#include "Utils/StringUtils.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Config/ConfigSet.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/Property.h"
+#include "Design/Function.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/DesignElaboration.h"
 #include <queue>
 
 using namespace SURELOG;
diff --git a/src/DesignCompile/DesignElaboration.h b/src/DesignCompile/DesignElaboration.h
index fe26346..515220d 100644
--- a/src/DesignCompile/DesignElaboration.h
+++ b/src/DesignCompile/DesignElaboration.h
@@ -24,8 +24,8 @@
 #ifndef DESIGNELABORATION_H
 #define DESIGNELABORATION_H
 
-#include "ElaborationStep.h"
-#include "../Expression/ExprBuilder.h"
+#include "DesignCompile/ElaborationStep.h"
+#include "Expression/ExprBuilder.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/ElaborationStep.cpp b/src/DesignCompile/ElaborationStep.cpp
index 743732e..bb97224 100644
--- a/src/DesignCompile/ElaborationStep.cpp
+++ b/src/DesignCompile/ElaborationStep.cpp
@@ -21,25 +21,25 @@
  * Created on July 12, 2017, 8:55 PM
  */
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Utils/StringUtils.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "../Testbench/ClassDefinition.h"
-#include "ElaborationStep.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Utils/StringUtils.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/ElaborationStep.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/ElaborationStep.h b/src/DesignCompile/ElaborationStep.h
index 33bcd57..ed816b4 100644
--- a/src/DesignCompile/ElaborationStep.h
+++ b/src/DesignCompile/ElaborationStep.h
@@ -24,7 +24,7 @@
 #ifndef ELABORATIONSTEP_H
 #define ELABORATIONSTEP_H
 
-#include "CompileDesign.h"
+#include "DesignCompile/CompileDesign.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/PackageAndRootElaboration.cpp b/src/DesignCompile/PackageAndRootElaboration.cpp
index 014bd5c..3f3e7ff 100644
--- a/src/DesignCompile/PackageAndRootElaboration.cpp
+++ b/src/DesignCompile/PackageAndRootElaboration.cpp
@@ -21,26 +21,26 @@
  * Created on June 3, 2019, 10:02 PM
  */
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "../Testbench/Property.h"
-#include "../Design/Function.h"
-#include "../Testbench/ClassDefinition.h"
-#include "PackageAndRootElaboration.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/Property.h"
+#include "Design/Function.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/PackageAndRootElaboration.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/PackageAndRootElaboration.h b/src/DesignCompile/PackageAndRootElaboration.h
index 9bcefa1..f1d3137 100644
--- a/src/DesignCompile/PackageAndRootElaboration.h
+++ b/src/DesignCompile/PackageAndRootElaboration.h
@@ -24,7 +24,7 @@
 #ifndef PACKAGEANDROOTELABORATION_H
 #define PACKAGEANDROOTELABORATION_H
 
-#include "ElaborationStep.h"
+#include "DesignCompile/ElaborationStep.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/ResolveSymbols.cpp b/src/DesignCompile/ResolveSymbols.cpp
index 968b79e..7a87690 100644
--- a/src/DesignCompile/ResolveSymbols.cpp
+++ b/src/DesignCompile/ResolveSymbols.cpp
@@ -20,25 +20,25 @@
  *
  * Created on July 1, 2017, 12:38 PM
  */
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Testbench/Program.h"
-#include "../Testbench/ClassDefinition.h"
-#include "CompileDesign.h"
-#include "ResolveSymbols.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Testbench/Program.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/CompileDesign.h"
+#include "DesignCompile/ResolveSymbols.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/ResolveSymbols.h b/src/DesignCompile/ResolveSymbols.h
index 60607d4..8dd08ba 100644
--- a/src/DesignCompile/ResolveSymbols.h
+++ b/src/DesignCompile/ResolveSymbols.h
@@ -23,9 +23,9 @@
 
 #ifndef RESOLVESYMBOLS_H
 #define RESOLVESYMBOLS_H
-#include "../Design/TimeInfo.h"
-#include "../Design/FileContent.h"
-#include "CompileStep.h"
+#include "Design/TimeInfo.h"
+#include "Design/FileContent.h"
+#include "DesignCompile/CompileStep.h"
 
 namespace SURELOG {
 
diff --git a/src/DesignCompile/TestbenchElaboration.cpp b/src/DesignCompile/TestbenchElaboration.cpp
index e06430e..ac088b5 100644
--- a/src/DesignCompile/TestbenchElaboration.cpp
+++ b/src/DesignCompile/TestbenchElaboration.cpp
@@ -23,26 +23,26 @@
 
 #include <queue>
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "../Testbench/Property.h"
-#include "../Design/Function.h"
-#include "../Testbench/ClassDefinition.h"
-#include "TestbenchElaboration.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/Property.h"
+#include "Design/Function.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/TestbenchElaboration.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/TestbenchElaboration.h b/src/DesignCompile/TestbenchElaboration.h
index b510ff0..0972ced 100644
--- a/src/DesignCompile/TestbenchElaboration.h
+++ b/src/DesignCompile/TestbenchElaboration.h
@@ -24,7 +24,7 @@
 #ifndef TESTBENCHELABORATION_H
 #define TESTBENCHELABORATION_H
 
-#include "ElaborationStep.h"
+#include "DesignCompile/ElaborationStep.h"
 
 namespace SURELOG {
 class Variable;
diff --git a/src/DesignCompile/UVMElaboration.cpp b/src/DesignCompile/UVMElaboration.cpp
index ccb9ae2..d0d2526 100644
--- a/src/DesignCompile/UVMElaboration.cpp
+++ b/src/DesignCompile/UVMElaboration.cpp
@@ -21,26 +21,26 @@
  * Created on July 12, 2017, 8:56 PM
  */
 
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/VObject.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/ParseFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "CompileDesign.h"
-#include "../Testbench/Property.h"
-#include "../Design/Function.h"
-#include "../Testbench/ClassDefinition.h"
-#include "UVMElaboration.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/VObject.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/Compiler.h"
+#include "DesignCompile/CompileDesign.h"
+#include "Testbench/Property.h"
+#include "Design/Function.h"
+#include "Testbench/ClassDefinition.h"
+#include "DesignCompile/UVMElaboration.h"
 
 using namespace SURELOG;
 
diff --git a/src/DesignCompile/UVMElaboration.h b/src/DesignCompile/UVMElaboration.h
index bffa87f..1a982c0 100644
--- a/src/DesignCompile/UVMElaboration.h
+++ b/src/DesignCompile/UVMElaboration.h
@@ -24,7 +24,7 @@
 #ifndef UVMELABORATION_H
 #define UVMELABORATION_H
 
-#include "TestbenchElaboration.h"
+#include "DesignCompile/TestbenchElaboration.h"
 
 namespace SURELOG {
 
diff --git a/src/ErrorReporting/Error.cpp b/src/ErrorReporting/Error.cpp
index 4f73ccc..cf339fc 100644
--- a/src/ErrorReporting/Error.cpp
+++ b/src/ErrorReporting/Error.cpp
@@ -21,7 +21,7 @@
  * Created on March 5, 2017, 11:30 PM
  */
 
-#include "Error.h"
+#include "ErrorReporting/Error.h"
 
 using namespace SURELOG;
 
diff --git a/src/ErrorReporting/Error.h b/src/ErrorReporting/Error.h
index 87d0ada..426e6bd 100644
--- a/src/ErrorReporting/Error.h
+++ b/src/ErrorReporting/Error.h
@@ -23,10 +23,10 @@
 
 #ifndef ERROR_H
 #define ERROR_H
-#include "ErrorDefinition.h"
+#include "ErrorReporting/ErrorDefinition.h"
 #include <string>
 #include <vector>
-#include "Location.h"
+#include "ErrorReporting/Location.h"
 
 namespace SURELOG {
 
diff --git a/src/ErrorReporting/ErrorContainer.cpp b/src/ErrorReporting/ErrorContainer.cpp
index c42c802..5d28770 100644
--- a/src/ErrorReporting/ErrorContainer.cpp
+++ b/src/ErrorReporting/ErrorContainer.cpp
@@ -21,17 +21,17 @@
  * Created on March 5, 2017, 11:12 PM
  */
 
-#include "ErrorContainer.h"
+#include "ErrorReporting/ErrorContainer.h"
 #include <mutex>
 #include <iostream>
 #include <fstream>
-#include "../CommandLine/CommandLineParser.hpp"
-#include "Waiver.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/Waiver.h"
 
 #include "antlr4-runtime.h"
 using namespace antlr4;
 
-#include "../API/PythonAPI.h"
+#include "API/PythonAPI.h"
 
 using namespace SURELOG;
 
diff --git a/src/ErrorReporting/ErrorContainer.h b/src/ErrorReporting/ErrorContainer.h
index 857f01d..072f626 100644
--- a/src/ErrorReporting/ErrorContainer.h
+++ b/src/ErrorReporting/ErrorContainer.h
@@ -26,8 +26,8 @@
 #include <string>
 #include <vector>
 #include <set>
-#include "ErrorDefinition.h"
-#include "Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/Error.h"
 #include "Python.h"
 
 namespace SURELOG {
diff --git a/src/ErrorReporting/ErrorDefinition.cpp b/src/ErrorReporting/ErrorDefinition.cpp
index a4dac29..54fde66 100644
--- a/src/ErrorReporting/ErrorDefinition.cpp
+++ b/src/ErrorReporting/ErrorDefinition.cpp
@@ -20,8 +20,8 @@
  *
  * Created on March 5, 2017, 11:25 PM
  */
-#include "../Utils/StringUtils.h"
-#include "ErrorDefinition.h"
+#include "Utils/StringUtils.h"
+#include "ErrorReporting/ErrorDefinition.h"
 
 using namespace SURELOG;
 
diff --git a/src/ErrorReporting/Location.cpp b/src/ErrorReporting/Location.cpp
index c884a33..795e15c 100644
--- a/src/ErrorReporting/Location.cpp
+++ b/src/ErrorReporting/Location.cpp
@@ -21,7 +21,7 @@
  * Created on March 6, 2017, 6:48 PM
  */
 #include <string>
-#include "Location.h"
+#include "ErrorReporting/Location.h"
 
 using namespace SURELOG;
 
diff --git a/src/ErrorReporting/Location.h b/src/ErrorReporting/Location.h
index 8981136..747158e 100644
--- a/src/ErrorReporting/Location.h
+++ b/src/ErrorReporting/Location.h
@@ -24,7 +24,7 @@
 #ifndef LOCATION_H
 #define LOCATION_H
 
-#include "../SourceCompile/SymbolTable.h"
+#include "SourceCompile/SymbolTable.h"
 
 namespace SURELOG {
 
diff --git a/src/ErrorReporting/Report.cpp b/src/ErrorReporting/Report.cpp
index 6470ddf..20ac746 100644
--- a/src/ErrorReporting/Report.cpp
+++ b/src/ErrorReporting/Report.cpp
@@ -21,10 +21,10 @@
  * Created on April 10, 2017, 8:56 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "ErrorContainer.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "Report.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/Report.h"
 #include <iostream>
 #include <fstream>
 #include <unistd.h>
diff --git a/src/ErrorReporting/Waiver.cpp b/src/ErrorReporting/Waiver.cpp
index e421225..76874eb 100644
--- a/src/ErrorReporting/Waiver.cpp
+++ b/src/ErrorReporting/Waiver.cpp
@@ -20,8 +20,8 @@
  *
  * Created on May 7, 2017, 11:11 PM
  */
-#include "ErrorDefinition.h"
-#include "Waiver.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/Waiver.h"
 #include <sstream>
 #include <string>
 #include <fstream>
diff --git a/src/ErrorReporting/Waiver.h b/src/ErrorReporting/Waiver.h
index 66a1b7e..df3a7b4 100644
--- a/src/ErrorReporting/Waiver.h
+++ b/src/ErrorReporting/Waiver.h
@@ -28,7 +28,7 @@
 #include <set>
 #include <vector>
 #include <map>
-#include "ErrorDefinition.h"
+#include "ErrorReporting/ErrorDefinition.h"
 
 namespace SURELOG {
 
diff --git a/src/Expression/Expr.cpp b/src/Expression/Expr.cpp
index 80d5184..56860ab 100644
--- a/src/Expression/Expr.cpp
+++ b/src/Expression/Expr.cpp
@@ -21,7 +21,7 @@
  * Created on October 29, 2017, 10:21 PM
  */
 
-#include "Expr.h"
+#include "Expression/Expr.h"
 
 using namespace SURELOG;
 
diff --git a/src/Expression/Expr.h b/src/Expression/Expr.h
index 66cb123..0d78cb9 100644
--- a/src/Expression/Expr.h
+++ b/src/Expression/Expr.h
@@ -24,7 +24,7 @@
 #ifndef EXPR_H
 #define EXPR_H
 #include <string>
-#include "Value.h"
+#include "Expression/Value.h"
 
 namespace SURELOG {
 
diff --git a/src/Expression/ExprBuilder.cpp b/src/Expression/ExprBuilder.cpp
index 8e73877..0f18205 100644
--- a/src/Expression/ExprBuilder.cpp
+++ b/src/Expression/ExprBuilder.cpp
@@ -20,9 +20,9 @@
  *
  * Created on November 2, 2017, 9:45 PM
  */
-#include "../ErrorReporting/ErrorContainer.h"
-#include "ExprBuilder.h"
-#include "../SourceCompile/VObjectTypes.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Expression/ExprBuilder.h"
+#include "SourceCompile/VObjectTypes.h"
 #include <iostream>
 #include <sstream>
 
diff --git a/src/Expression/ExprBuilder.h b/src/Expression/ExprBuilder.h
index 67647c0..d9ccb0c 100644
--- a/src/Expression/ExprBuilder.h
+++ b/src/Expression/ExprBuilder.h
@@ -23,12 +23,12 @@
 
 #ifndef EXPRBUILDER_H
 #define EXPRBUILDER_H
-#include "../SourceCompile/SymbolTable.h"
+#include "SourceCompile/SymbolTable.h"
 
-#include "Expr.h"
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../Design/ValuedComponentI.h"
+#include "Expression/Expr.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "Design/ValuedComponentI.h"
 
 namespace SURELOG {
 
diff --git a/src/Expression/Value.cpp b/src/Expression/Value.cpp
index a14790d..d790f04 100644
--- a/src/Expression/Value.cpp
+++ b/src/Expression/Value.cpp
@@ -24,7 +24,7 @@
 #include <cmath>
 #include <cstdint>
 #include <cstring>
-#include "Value.h"
+#include "Expression/Value.h"
 
 using namespace SURELOG;
 
diff --git a/src/Library/AntlrLibParserErrorListener.cpp b/src/Library/AntlrLibParserErrorListener.cpp
index f7d09f9..145f1d4 100644
--- a/src/Library/AntlrLibParserErrorListener.cpp
+++ b/src/Library/AntlrLibParserErrorListener.cpp
@@ -24,12 +24,12 @@
 #include "atn/ParserATNSimulator.h"
 using namespace std;
 using namespace antlr4;
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "ParseLibraryDef.h"
-#include "AntlrLibParserErrorListener.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Library/ParseLibraryDef.h"
+#include "Library/AntlrLibParserErrorListener.h"
 using namespace SURELOG;
 
 void AntlrLibParserErrorListener::syntaxError(
diff --git a/src/Library/Library.cpp b/src/Library/Library.cpp
index 5f0fba3..2674c39 100644
--- a/src/Library/Library.cpp
+++ b/src/Library/Library.cpp
@@ -20,10 +20,10 @@
  *
  * Created on January 27, 2018, 5:25 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../Design/ModuleDefinition.h"
-#include "Library.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/ModuleDefinition.h"
+#include "Library/Library.h"
 
 using namespace SURELOG;
 
diff --git a/src/Library/LibrarySet.cpp b/src/Library/LibrarySet.cpp
index 77285f7..c8781dd 100644
--- a/src/Library/LibrarySet.cpp
+++ b/src/Library/LibrarySet.cpp
@@ -23,9 +23,9 @@
 #include <vector>
 #include <set>
 #include <iostream>
-#include "../SourceCompile/SymbolTable.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "LibrarySet.h"
+#include "SourceCompile/SymbolTable.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "Library/LibrarySet.h"
 
 using namespace SURELOG;
 
diff --git a/src/Library/LibrarySet.h b/src/Library/LibrarySet.h
index b1e597f..7a0b6b4 100644
--- a/src/Library/LibrarySet.h
+++ b/src/Library/LibrarySet.h
@@ -23,7 +23,7 @@
 
 #ifndef LIBRARYSET_H
 #define LIBRARYSET_H
-#include "Library.h"
+#include "Library/Library.h"
 #include <vector>
 
 namespace SURELOG {
diff --git a/src/Library/ParseLibraryDef.cpp b/src/Library/ParseLibraryDef.cpp
index ace4e5b..a4791e0 100644
--- a/src/Library/ParseLibraryDef.cpp
+++ b/src/Library/ParseLibraryDef.cpp
@@ -20,23 +20,23 @@
  *
  * Created on January 27, 2018, 5:05 PM
  */
-#include "../Utils/StringUtils.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "ParseLibraryDef.h"
-#include "../Utils/FileUtils.h"
+#include "Utils/StringUtils.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Library/ParseLibraryDef.h"
+#include "Utils/FileUtils.h"
 #include "antlr4-runtime.h"
 #include "atn/ParserATNSimulator.h"
 using namespace antlr4;
 using namespace SURELOG;
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "SVLibShapeListener.h"
-#include "AntlrLibParserErrorListener.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "Library/SVLibShapeListener.h"
+#include "Library/AntlrLibParserErrorListener.h"
 
 ParseLibraryDef::ParseLibraryDef(CommandLineParser* commandLineParser,
                                  ErrorContainer* errors,
diff --git a/src/Library/ParseLibraryDef.h b/src/Library/ParseLibraryDef.h
index a0787fb..fc3cf09 100644
--- a/src/Library/ParseLibraryDef.h
+++ b/src/Library/ParseLibraryDef.h
@@ -23,9 +23,9 @@
 
 #ifndef PARSELIBRARYDEF_H
 #define PARSELIBRARYDEF_H
-#include "LibrarySet.h"
-#include "../Config/ConfigSet.h"
-#include "../Design/FileContent.h"
+#include "Library/LibrarySet.h"
+#include "Config/ConfigSet.h"
+#include "Design/FileContent.h"
 
 namespace SURELOG {
 
diff --git a/src/Library/SVLibShapeListener.cpp b/src/Library/SVLibShapeListener.cpp
index c964143..e50cfa7 100644
--- a/src/Library/SVLibShapeListener.cpp
+++ b/src/Library/SVLibShapeListener.cpp
@@ -20,21 +20,21 @@
  *
  * Created on January 28, 2018, 10:17 PM
  */
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../SourceCompile/CompilationUnit.h"
-#include "../SourceCompile/PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../SourceCompile/ParseFile.h"
-#include "ParseLibraryDef.h"
-#include "../Utils/FileUtils.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Library/ParseLibraryDef.h"
+#include "Utils/FileUtils.h"
 #include "antlr4-runtime.h"
 #include "atn/ParserATNSimulator.h"
 using namespace antlr4;
-#include "ParseLibraryDef.h"
-#include "SVLibShapeListener.h"
-#include "../Utils/FileUtils.h"
-#include "../Utils/ParseUtils.h"
+#include "Library/ParseLibraryDef.h"
+#include "Library/SVLibShapeListener.h"
+#include "Utils/FileUtils.h"
+#include "Utils/ParseUtils.h"
 using namespace SURELOG;
 
 SVLibShapeListener::SVLibShapeListener(ParseLibraryDef *parser,
diff --git a/src/Library/SVLibShapeListener.h b/src/Library/SVLibShapeListener.h
index 69bda6f..e1640ba 100644
--- a/src/Library/SVLibShapeListener.h
+++ b/src/Library/SVLibShapeListener.h
@@ -23,8 +23,8 @@
 
 #ifndef SVLIBSHAPELISTENER_H
 #define SVLIBSHAPELISTENER_H
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "../SourceCompile/SV3_1aTreeShapeListener.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "SourceCompile/SV3_1aTreeShapeListener.h"
 
 namespace SURELOG {
 
diff --git a/src/Package/Package.cpp b/src/Package/Package.cpp
index 9b8e9a2..756a47b 100644
--- a/src/Package/Package.cpp
+++ b/src/Package/Package.cpp
@@ -20,10 +20,10 @@
  *
  * Created on March 18, 2018, 7:58 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Expression/ExprBuilder.h"
-#include "Package.h"
-#include "../Testbench/ClassDefinition.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Expression/ExprBuilder.h"
+#include "Package/Package.h"
+#include "Testbench/ClassDefinition.h"
 
 using namespace SURELOG;
 
diff --git a/src/Package/Package.h b/src/Package/Package.h
index 0328b82..308b7df 100644
--- a/src/Package/Package.h
+++ b/src/Package/Package.h
@@ -24,11 +24,11 @@
 #ifndef PACKAGE_H
 #define PACKAGE_H
 
-#include "../Library/Library.h"
-#include "../Design/FileContent.h"
-#include "../Design/DesignComponent.h"
-#include "../Design/ValuedComponentI.h"
-#include "../Design/DataType.h"
+#include "Library/Library.h"
+#include "Design/FileContent.h"
+#include "Design/DesignComponent.h"
+#include "Design/ValuedComponentI.h"
+#include "Design/DataType.h"
 
 namespace SURELOG {
 class CompilePackage;
diff --git a/src/Package/Precompiled.cpp b/src/Package/Precompiled.cpp
index 6799160..588180c 100644
--- a/src/Package/Precompiled.cpp
+++ b/src/Package/Precompiled.cpp
@@ -21,7 +21,7 @@
  * Created on April 28, 2018, 10:27 AM
  */
 
-#include "Precompiled.h"
+#include "Package/Precompiled.h"
 
 Precompiled* Precompiled::m_singleton = NULL;
 
diff --git a/src/README.md b/src/README.md
index cb23143..5ce0a60 100644
--- a/src/README.md
+++ b/src/README.md
@@ -9,19 +9,28 @@
 Please see [`INSTALL`](../INSTALL.md)
 
 ### Build
- cd Surelog
- make
+ * cd Surelog
+```bash
+make
+```
+```bash
+make install (/usr/local/bin and /usr/local/lib/surelog by default, use DESTDIR= for alternative locations)
+```
 
 ### Run a test
 
-* dist/Release/GNU-Linux/surelog -help
-* dist/Release/GNU-Linux/surelog -writepp -parse tests/UnitTest/top.v
+* dist/Release/surelog -help
+* dist/Release/surelog -writepp -parse tests/UnitTest/top.v
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 ## Modus operanti for grammar development:
 
 * Edit the grammar file in the G4 directory, test the grammar locally with the java targets: 
-  * cd Surelog/grammar; ant compile_java; ant javac; ant test_pp_tokens
+  * cd Surelog/grammar;
+  * ant compile_java;
+  * ant javac;
+  * ant test_pp_tokens or
+  * ant test_tree ... (There are several debug targets in the build.xml)
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 ## TESTS and REGRESSIONS
@@ -43,22 +52,12 @@
 * regression.tcl update (Updates the diffs)  
 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-## RELEASES
-
-* cd build
-* ../src/release.tcl <release, debug> Releases the following:
-
-  * Created  dist/surelog_release.tar.gz
-
-Run this script at least once to create symbolic links for the Python Listener
-
-++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 ## PROFILING
 
 * Either
-   * env CPUPROFILE=./prof env LD_PRELOAD="/usr/lib/libprofiler.so"  ../../dist/Debug/GNU-Linux/surelog <test>
+   * env CPUPROFILE=./prof env LD_PRELOAD="/usr/lib/libprofiler.so"  build/dist/Debug/surelog <test>
 * Or 
-   * google-pprof --callgrind  ../../dist/Debug/GNU-Linux/surelog prof >> call
+   * google-pprof --callgrind  build/dist/Debug/surelog prof >> call
    * kcachegrind call 
 
 * Get Google tools: 
diff --git a/src/SourceCompile/AnalyzeFile.cpp b/src/SourceCompile/AnalyzeFile.cpp
index 7dc96cc..1330d39 100644
--- a/src/SourceCompile/AnalyzeFile.cpp
+++ b/src/SourceCompile/AnalyzeFile.cpp
@@ -20,22 +20,22 @@
  *
  * Created on July 23, 2017, 11:05 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/TimeInfo.h"
-#include "../Design/DesignElement.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "IncludeFileInfo.h"
-#include "../Utils/StringUtils.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "../SourceCompile/CompileSourceFile.h"
-#include "../SourceCompile/Compiler.h"
-#include "../Design/Design.h"
-#include "AnalyzeFile.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/IncludeFileInfo.h"
+#include "Utils/StringUtils.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Design/Design.h"
+#include "SourceCompile/AnalyzeFile.h"
 #include <fstream>
 #include <stdio.h>
 #include <ctype.h>
diff --git a/src/SourceCompile/AnalyzeFile.h b/src/SourceCompile/AnalyzeFile.h
index f964a63..b110ee5 100644
--- a/src/SourceCompile/AnalyzeFile.h
+++ b/src/SourceCompile/AnalyzeFile.h
@@ -24,7 +24,7 @@
 #ifndef ANALYZEFILE_H
 #define ANALYZEFILE_H
 #include <stack>
-#include "IncludeFileInfo.h"
+#include "SourceCompile/IncludeFileInfo.h"
 
 namespace SURELOG {
 class Design;
diff --git a/src/SourceCompile/AntlrParserErrorListener.cpp b/src/SourceCompile/AntlrParserErrorListener.cpp
index 5ebb124..99e0fb3 100644
--- a/src/SourceCompile/AntlrParserErrorListener.cpp
+++ b/src/SourceCompile/AntlrParserErrorListener.cpp
@@ -24,17 +24,17 @@
 #include "atn/ParserATNSimulator.h"
 using namespace std;
 using namespace antlr4;
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
-#include "../Utils/FileUtils.h"
-#include "../Utils/StringUtils.h"
-#include "AntlrParserErrorListener.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Utils/FileUtils.h"
+#include "Utils/StringUtils.h"
+#include "SourceCompile/AntlrParserErrorListener.h"
 using namespace SURELOG;
 
 void AntlrParserErrorListener::syntaxError(Recognizer *recognizer,
diff --git a/src/SourceCompile/AntlrParserHandler.cpp b/src/SourceCompile/AntlrParserHandler.cpp
index 798ac3f..ed2d3e4 100644
--- a/src/SourceCompile/AntlrParserHandler.cpp
+++ b/src/SourceCompile/AntlrParserHandler.cpp
@@ -24,10 +24,10 @@
 #include "antlr4-runtime.h"
 using namespace std;
 using namespace antlr4;
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
 
-#include "AntlrParserHandler.h"
+#include "SourceCompile/AntlrParserHandler.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/CheckCompile.cpp b/src/SourceCompile/CheckCompile.cpp
index 8feed0a..43dd3e7 100644
--- a/src/SourceCompile/CheckCompile.cpp
+++ b/src/SourceCompile/CheckCompile.cpp
@@ -22,21 +22,21 @@
  */
 #include <iostream>
 #include <set>
-#include "SymbolTable.h"
-#include "../Design/TimeInfo.h"
-#include "../Design/DesignElement.h"
-#include "../Design/FileContent.h"
-#include "../ErrorReporting/Location.h"
-#include "../ErrorReporting/Error.h"
-#include "../ErrorReporting/ErrorDefinition.h"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "CheckCompile.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
+#include "Design/FileContent.h"
+#include "ErrorReporting/Location.h"
+#include "ErrorReporting/Error.h"
+#include "ErrorReporting/ErrorDefinition.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "CommandLine/CommandLineParser.h"
+#include "SourceCompile/CheckCompile.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/CompilationUnit.cpp b/src/SourceCompile/CompilationUnit.cpp
index 7629850..b2ba799 100644
--- a/src/SourceCompile/CompilationUnit.cpp
+++ b/src/SourceCompile/CompilationUnit.cpp
@@ -20,8 +20,8 @@
  *
  * Created on April 5, 2017, 9:16 PM
  */
-#include "SymbolTable.h"
-#include "CompilationUnit.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/CompilationUnit.h b/src/SourceCompile/CompilationUnit.h
index 9acd0a8..995e8a9 100644
--- a/src/SourceCompile/CompilationUnit.h
+++ b/src/SourceCompile/CompilationUnit.h
@@ -23,8 +23,8 @@
 
 #ifndef COMPILATIONUNIT_H
 #define COMPILATIONUNIT_H
-#include "MacroInfo.h"
-#include "../Design/TimeInfo.h"
+#include "SourceCompile/MacroInfo.h"
+#include "Design/TimeInfo.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/CompileSourceFile.cpp b/src/SourceCompile/CompileSourceFile.cpp
index 037313b..8fb32f1 100644
--- a/src/SourceCompile/CompileSourceFile.cpp
+++ b/src/SourceCompile/CompileSourceFile.cpp
@@ -20,35 +20,35 @@
  *
  * Created on February 20, 2017, 9:54 PM
  */
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "SymbolTable.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompilationUnit.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompilationUnit.h"
 
 #include "antlr4-runtime.h"
 using namespace antlr4;
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
 
-#include "AntlrParserHandler.h"
+#include "SourceCompile/AntlrParserHandler.h"
 
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/FileUtils.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Utils/StringUtils.h"
+#include "Utils/FileUtils.h"
 #include <cstdlib>
 #include <iostream>
 #include <fstream>
 #include <sys/types.h>
 #include <sys/stat.h>
 using namespace std;
-#include "PreprocessFile.h"
-#include "ParseFile.h"
-#include "../API/PythonAPI.h"
-#include "PythonListen.h"
-#include "../Package/Precompiled.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "API/PythonAPI.h"
+#include "SourceCompile/PythonListen.h"
+#include "Package/Precompiled.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/CompileSourceFile.h b/src/SourceCompile/CompileSourceFile.h
index a76d7bb..34f188c 100644
--- a/src/SourceCompile/CompileSourceFile.h
+++ b/src/SourceCompile/CompileSourceFile.h
@@ -26,8 +26,8 @@
 #include <string>
 #include <vector>
 
-#include "ParseFile.h"
-#include "AnalyzeFile.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/AnalyzeFile.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/Compiler.cpp b/src/SourceCompile/Compiler.cpp
index c3823f8..be1a481 100644
--- a/src/SourceCompile/Compiler.cpp
+++ b/src/SourceCompile/Compiler.cpp
@@ -20,28 +20,28 @@
  *
  * Created on March 4, 2017, 5:16 PM
  */
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "SymbolTable.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompilationUnit.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "CheckCompile.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/CheckCompile.h"
 #include "antlr4-runtime.h"
-#include "../DesignCompile/CompileDesign.h"
-#include "AnalyzeFile.h"
-#include "../Library/ParseLibraryDef.h"
-#include "../Utils/FileUtils.h"
-#include "../Package/Precompiled.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/Timer.h"
-#include "math.h"
+#include "DesignCompile/CompileDesign.h"
+#include "SourceCompile/AnalyzeFile.h"
+#include "Library/ParseLibraryDef.h"
+#include "Utils/FileUtils.h"
+#include "Package/Precompiled.h"
+#include "Utils/StringUtils.h"
+#include "Utils/Timer.h"
+#include <math.h>
 using namespace antlr4;
 
-#include "../API/PythonAPI.h"
-#include "CheckCompile.h"
+#include "API/PythonAPI.h"
+#include "SourceCompile/CheckCompile.h"
 #include <mutex>
 #include <thread>
 #include <vector>
diff --git a/src/SourceCompile/Compiler.h b/src/SourceCompile/Compiler.h
index 3743070..80c182b 100644
--- a/src/SourceCompile/Compiler.h
+++ b/src/SourceCompile/Compiler.h
@@ -28,10 +28,10 @@
 #include <set>
 #include <map>
 #include <thread>
-#include "../Design/Design.h"
-#include "../Library/LibrarySet.h"
-#include "../Config/ConfigSet.h"
-#include "PreprocessFile.h"
+#include "Design/Design.h"
+#include "Library/LibrarySet.h"
+#include "Config/ConfigSet.h"
+#include "SourceCompile/PreprocessFile.h"
 
 #ifdef USETBB
 #include <tbb/task.h>
diff --git a/src/SourceCompile/LoopCheck.cpp b/src/SourceCompile/LoopCheck.cpp
index 4808895..d4a35cd 100644
--- a/src/SourceCompile/LoopCheck.cpp
+++ b/src/SourceCompile/LoopCheck.cpp
@@ -23,8 +23,8 @@
 
 #include <queue>
 #include <set>
-#include "SymbolTable.h"
-#include "LoopCheck.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/LoopCheck.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/MacroInfo.cpp b/src/SourceCompile/MacroInfo.cpp
index ffaaa87..7d5cde2 100644
--- a/src/SourceCompile/MacroInfo.cpp
+++ b/src/SourceCompile/MacroInfo.cpp
@@ -21,7 +21,7 @@
  * Created on April 5, 2017, 11:46 PM
  */
 
-#include "SymbolTable.h"
-#include "MacroInfo.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/MacroInfo.h"
 
 using namespace SURELOG;
diff --git a/src/SourceCompile/ParseFile.cpp b/src/SourceCompile/ParseFile.cpp
index 1ea5024..113c99a 100644
--- a/src/SourceCompile/ParseFile.cpp
+++ b/src/SourceCompile/ParseFile.cpp
@@ -21,15 +21,15 @@
  * Created on February 24, 2017, 10:03 PM
  */
 
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
-#include "AntlrParserHandler.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/AntlrParserHandler.h"
 #include <cstdlib>
 #include <iostream>
 #include "antlr4-runtime.h"
@@ -39,19 +39,19 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "SV3_1aTreeShapeListener.h"
-#include "../API/SV3_1aPythonListener.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "SourceCompile/SV3_1aTreeShapeListener.h"
+#include "API/SV3_1aPythonListener.h"
 using namespace antlr4;
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
-#include "../Cache/ParseCache.h"
-#include "AntlrParserErrorListener.h"
-#include "../Package/Precompiled.h"
-#include "../Utils/StringUtils.h"
-#include "../Utils/Timer.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
+#include "Cache/ParseCache.h"
+#include "SourceCompile/AntlrParserErrorListener.h"
+#include "Package/Precompiled.h"
+#include "Utils/StringUtils.h"
+#include "Utils/Timer.h"
 ParseFile::ParseFile(SymbolId fileId, SymbolTable* symbolTable,
                      ErrorContainer* errors)
     : m_fileId(fileId),
diff --git a/src/SourceCompile/ParseFile.h b/src/SourceCompile/ParseFile.h
index 9a959fa..336d72b 100644
--- a/src/SourceCompile/ParseFile.h
+++ b/src/SourceCompile/ParseFile.h
@@ -25,10 +25,10 @@
 #define PARSEFILE_H
 #include <string>
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "AntlrParserHandler.h"
-#include "../Design/FileContent.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "SourceCompile/AntlrParserHandler.h"
+#include "Design/FileContent.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/PreprocessFile.cpp b/src/SourceCompile/PreprocessFile.cpp
index 92ac6a2..70eba8d 100644
--- a/src/SourceCompile/PreprocessFile.cpp
+++ b/src/SourceCompile/PreprocessFile.cpp
@@ -20,16 +20,16 @@
  *
  * Created on February 24, 2017, 9:38 PM
  */
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "../Utils/StringUtils.h"
-#include "../Cache/PPCache.h"
-#include "../ErrorReporting/Waiver.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "Utils/StringUtils.h"
+#include "Cache/PPCache.h"
+#include "ErrorReporting/Waiver.h"
 #include <cstdlib>
 #include <iostream>
 #include <regex>
@@ -38,12 +38,12 @@
 using namespace std;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aPpLexer.h"
-#include "../parser/SV3_1aPpParser.h"
-#include "../parser/SV3_1aPpParserBaseListener.h"
+#include "parser/SV3_1aPpLexer.h"
+#include "parser/SV3_1aPpParser.h"
+#include "parser/SV3_1aPpParserBaseListener.h"
 using namespace antlr4;
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
 #include "antlr4-runtime.h"
 #include "atn/ParserATNSimulator.h"
 #include "Parser.h"
@@ -51,7 +51,7 @@
 std::string PreprocessFile::PP__Line__Marking = "SURELOG__LINE__MARKING";
 std::string PreprocessFile::PP__File__Marking = "SURELOG__FILE__MARKING";
 
-#include "SV3_1aPpTreeShapeListener.h"
+#include "SourceCompile/SV3_1aPpTreeShapeListener.h"
 
 void PreprocessFile::setDebug(int level) {
   switch (level) {
@@ -324,7 +324,7 @@
         c = stream.get();
       }
       stream.close();
-      
+
       try {
         m_antlrParserHandler->m_inputStream = new ANTLRInputStream(text);
       } catch (...) {
@@ -646,7 +646,7 @@
           SpecialInstructions::AsIsUndefinedMacroInstr::ComplainUndefinedMacro);
     }
   }
-  
+
   if ((actual_args.size() > formal_args.size() && (!m_instructions.m_mute))) {
     if (formal_args.size() == 0 &&
         (StringUtils::getFirstNonEmptyToken(body_tokens) == "(")) {
diff --git a/src/SourceCompile/PreprocessFile.h b/src/SourceCompile/PreprocessFile.h
index e45f6c6..113f19d 100644
--- a/src/SourceCompile/PreprocessFile.h
+++ b/src/SourceCompile/PreprocessFile.h
@@ -29,12 +29,12 @@
 #include <set>
 #include <stack>
 
-#include "../parser/SV3_1aPpLexer.h"
-#include "../parser/SV3_1aPpParser.h"
-#include "CompilationUnit.h"
-#include "../Library/Library.h"
-#include "LoopCheck.h"
-#include "IncludeFileInfo.h"
+#include "parser/SV3_1aPpLexer.h"
+#include "parser/SV3_1aPpParser.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "Library/Library.h"
+#include "SourceCompile/LoopCheck.h"
+#include "SourceCompile/IncludeFileInfo.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/PythonListen.cpp b/src/SourceCompile/PythonListen.cpp
index dccadcc..3669561 100644
--- a/src/SourceCompile/PythonListen.cpp
+++ b/src/SourceCompile/PythonListen.cpp
@@ -21,15 +21,15 @@
  * Created on June 4, 2017, 8:09 PM
  */
 
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
-#include "AntlrParserHandler.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/AntlrParserHandler.h"
 #include <cstdlib>
 #include <iostream>
 #include "antlr4-runtime.h"
@@ -37,13 +37,13 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "../API/SV3_1aPythonListener.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "API/SV3_1aPythonListener.h"
 
-#include "PythonListen.h"
-#include "../Cache/PythonAPICache.h"
+#include "SourceCompile/PythonListen.h"
+#include "Cache/PythonAPICache.h"
 
 using namespace SURELOG;
 
diff --git a/src/SourceCompile/SV3_1aPpTreeShapeListener.cpp b/src/SourceCompile/SV3_1aPpTreeShapeListener.cpp
index 9a7712b..21cd458 100644
--- a/src/SourceCompile/SV3_1aPpTreeShapeListener.cpp
+++ b/src/SourceCompile/SV3_1aPpTreeShapeListener.cpp
@@ -14,16 +14,16 @@
  limitations under the License.
  */
 
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "SymbolTable.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "PreprocessFile.h"
-#include "../Utils/StringUtils.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "Utils/StringUtils.h"
 
 #include <cstdlib>
 #include <iostream>
@@ -32,14 +32,14 @@
 using namespace std;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aPpLexer.h"
-#include "../parser/SV3_1aPpParser.h"
-#include "../parser/SV3_1aPpParserBaseListener.h"
+#include "parser/SV3_1aPpLexer.h"
+#include "parser/SV3_1aPpParser.h"
+#include "parser/SV3_1aPpParserBaseListener.h"
 using namespace antlr4;
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
 
-#include "SV3_1aPpTreeShapeListener.h"
+#include "SourceCompile/SV3_1aPpTreeShapeListener.h"
 
 void SV3_1aPpTreeShapeListener::logError(ErrorDefinition::ErrorType error,
                                          ParserRuleContext* ctx,
diff --git a/src/SourceCompile/SV3_1aPpTreeShapeListener.h b/src/SourceCompile/SV3_1aPpTreeShapeListener.h
index 493d198..6669bc6 100644
--- a/src/SourceCompile/SV3_1aPpTreeShapeListener.h
+++ b/src/SourceCompile/SV3_1aPpTreeShapeListener.h
@@ -25,12 +25,12 @@
 #define SV3_1APPTREESHAPELISTENER_H
 #include <regex>
 
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "SymbolTable.h"
-#include "CompilationUnit.h"
-#include "../Design/TimeInfo.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "Design/TimeInfo.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/SV3_1aTreeShapeHelper.cpp b/src/SourceCompile/SV3_1aTreeShapeHelper.cpp
index d2ea889..878db4e 100644
--- a/src/SourceCompile/SV3_1aTreeShapeHelper.cpp
+++ b/src/SourceCompile/SV3_1aTreeShapeHelper.cpp
@@ -21,14 +21,14 @@
  * Created on June 25, 2017, 2:51 PM
  */
 
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
 
 #include <cstdlib>
 #include <iostream>
@@ -37,13 +37,13 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "SV3_1aTreeShapeHelper.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "SourceCompile/SV3_1aTreeShapeHelper.h"
 using namespace antlr4;
-#include "../Utils/ParseUtils.h"
-#include "SV3_1aTreeShapeHelper.h"
+#include "Utils/ParseUtils.h"
+#include "SourceCompile/SV3_1aTreeShapeHelper.h"
 
 SV3_1aTreeShapeHelper::SV3_1aTreeShapeHelper(ParseFile* pf,
                                              antlr4::CommonTokenStream* tokens,
diff --git a/src/SourceCompile/SV3_1aTreeShapeHelper.h b/src/SourceCompile/SV3_1aTreeShapeHelper.h
index 3e7e4d4..d278d62 100644
--- a/src/SourceCompile/SV3_1aTreeShapeHelper.h
+++ b/src/SourceCompile/SV3_1aTreeShapeHelper.h
@@ -26,17 +26,17 @@
 #include <stack>
 #include <map>
 #include <unordered_map>
-#include "../Utils/ParseUtils.h"
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/TimeInfo.h"
-#include "../Design/DesignElement.h"
-#include "../Design/FileContent.h"
-#include "ParseFile.h"
-#include "CompilationUnit.h"
-#include "CompileSourceFile.h"
-#include "VObjectTypes.h"
-#include "../Library/ParseLibraryDef.h"
-#include "IncludeFileInfo.h"
+#include "Utils/ParseUtils.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/TimeInfo.h"
+#include "Design/DesignElement.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/ParseFile.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Library/ParseLibraryDef.h"
+#include "SourceCompile/IncludeFileInfo.h"
 
 namespace SURELOG {
 
diff --git a/src/SourceCompile/SV3_1aTreeShapeListener.cpp b/src/SourceCompile/SV3_1aTreeShapeListener.cpp
index 2cde537..2498959 100644
--- a/src/SourceCompile/SV3_1aTreeShapeListener.cpp
+++ b/src/SourceCompile/SV3_1aTreeShapeListener.cpp
@@ -21,15 +21,15 @@
  * Created on April 16, 2017, 8:28 PM
  */
 
-#include "SymbolTable.h"
-#include "../CommandLine/CommandLineParser.hpp"
-#include "../ErrorReporting/ErrorContainer.h"
-#include "CompilationUnit.h"
-#include "PreprocessFile.h"
-#include "CompileSourceFile.h"
-#include "Compiler.h"
-#include "ParseFile.h"
-#include "../Utils/StringUtils.h"
+#include "SourceCompile/SymbolTable.h"
+#include "CommandLine/CommandLineParser.h"
+#include "ErrorReporting/ErrorContainer.h"
+#include "SourceCompile/CompilationUnit.h"
+#include "SourceCompile/PreprocessFile.h"
+#include "SourceCompile/CompileSourceFile.h"
+#include "SourceCompile/Compiler.h"
+#include "SourceCompile/ParseFile.h"
+#include "Utils/StringUtils.h"
 
 #include <cstdlib>
 #include <iostream>
@@ -40,15 +40,15 @@
 using namespace antlr4;
 using namespace SURELOG;
 
-#include "../parser/SV3_1aLexer.h"
-#include "../parser/SV3_1aParser.h"
-#include "../parser/SV3_1aParserBaseListener.h"
-#include "../parser/SV3_1aPpParserBaseListener.h"
-#include "../Utils/ParseUtils.h"
-#include "../Utils/FileUtils.h"
-#include "SV3_1aPpTreeShapeListener.h"
-#include "SV3_1aTreeShapeListener.h"
-#include "SV3_1aTreeShapeHelper.h"
+#include "parser/SV3_1aLexer.h"
+#include "parser/SV3_1aParser.h"
+#include "parser/SV3_1aParserBaseListener.h"
+#include "parser/SV3_1aPpParserBaseListener.h"
+#include "Utils/ParseUtils.h"
+#include "Utils/FileUtils.h"
+#include "SourceCompile/SV3_1aPpTreeShapeListener.h"
+#include "SourceCompile/SV3_1aTreeShapeListener.h"
+#include "SourceCompile/SV3_1aTreeShapeHelper.h"
 using namespace antlr4;
 
 void SV3_1aTreeShapeListener::enterTop_level_rule(
diff --git a/src/SourceCompile/SymbolTable.cpp b/src/SourceCompile/SymbolTable.cpp
index 8d305e0..588ce5f 100644
--- a/src/SourceCompile/SymbolTable.cpp
+++ b/src/SourceCompile/SymbolTable.cpp
@@ -21,7 +21,7 @@
  * Created on March 6, 2017, 11:10 PM
  */
 #include <iostream>
-#include "SymbolTable.h"
+#include "SourceCompile/SymbolTable.h"
 #include <mutex>
 #include <vector>
 
diff --git a/src/SourceCompile/generate_parser_listener.tcl b/src/SourceCompile/generate_parser_listener.tcl
index bf269ba..f9160a2 100755
--- a/src/SourceCompile/generate_parser_listener.tcl
+++ b/src/SourceCompile/generate_parser_listener.tcl
@@ -66,11 +66,11 @@
 puts $oid "#include <stack>"
 puts $oid "#include <map>"
 puts $oid "#include <unordered_map>"
-puts $oid "#include \"../Utils/ParseUtils.h\""
-puts $oid "#include \"../SourceCompile/SymbolTable.h\""
-puts $oid "#include \"../Design/TimeInfo.h\""
-puts $oid "#include \"../Design/DesignElement.h\""
-puts $oid "#include \"../Design/FileContent.h\""
+puts $oid "#include \"Utils/ParseUtils.h\""
+puts $oid "#include \"SourceCompile/SymbolTable.h\""
+puts $oid "#include \"Design/TimeInfo.h\""
+puts $oid "#include \"Design/DesignElement.h\""
+puts $oid "#include \"Design/FileContent.h\""
 puts $oid "#include \"ParseFile.h\""
 puts $oid "#include \"CompilationUnit.h\""
 puts $oid "#include \"CompileSourceFile.h\""
@@ -168,7 +168,7 @@
 set oid [open "SourceCompile/VObjectTypes.cpp" "w"]
 puts $oid ""
 puts $oid "#include <string>"
-puts $oid "#include \"../Design/VObject.h\""
+puts $oid "#include \"Design/VObject.h\""
 puts $oid "// This file is automatically generated by generate_parser_listener.tcl"
 puts $oid "// DO NOT EDIT"
 puts $oid ""
diff --git a/src/Testbench/ClassDefinition.cpp b/src/Testbench/ClassDefinition.cpp
index 1e74713..ae1c0b1 100644
--- a/src/Testbench/ClassDefinition.cpp
+++ b/src/Testbench/ClassDefinition.cpp
@@ -20,8 +20,8 @@
  *
  * Created on June 1, 2018, 10:12 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
 #include "ClassDefinition.h"
 
 using namespace SURELOG;
diff --git a/src/Testbench/ClassDefinition.h b/src/Testbench/ClassDefinition.h
index b563279..737b822 100644
--- a/src/Testbench/ClassDefinition.h
+++ b/src/Testbench/ClassDefinition.h
@@ -24,16 +24,16 @@
 #ifndef CLASSDEFINITION_H
 #define CLASSDEFINITION_H
 
-#include "../Design/DesignComponent.h"
-#include "../Design/ValuedComponentI.h"
-#include "../Design/DataType.h"
+#include "Design/DesignComponent.h"
+#include "Design/ValuedComponentI.h"
+#include "Design/DataType.h"
 #include "Property.h"
 #include "FunctionMethod.h"
 #include "TaskMethod.h"
 #include "Constraint.h"
 #include "TypeDef.h"
 #include "CoverGroupDefinition.h"
-#include "../Design/Parameter.h"
+#include "Design/Parameter.h"
 
 namespace SURELOG {
 class CompileClass;
diff --git a/src/Testbench/ClassObject.cpp b/src/Testbench/ClassObject.cpp
index 2c66d7e..9343509 100644
--- a/src/Testbench/ClassObject.cpp
+++ b/src/Testbench/ClassObject.cpp
@@ -20,8 +20,8 @@
  *
  * Created on March 24, 2019, 7:38 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
 #include "ClassObject.h"
 
 using namespace SURELOG;
diff --git a/src/Testbench/ClassObject.h b/src/Testbench/ClassObject.h
index 31617b9..19ee625 100644
--- a/src/Testbench/ClassObject.h
+++ b/src/Testbench/ClassObject.h
@@ -25,7 +25,7 @@
 #define CLASSOBJECT_H
 
 #include "ClassDefinition.h"
-#include "../Expression/Value.h"
+#include "Expression/Value.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/Constraint.h b/src/Testbench/Constraint.h
index fae7380..82dc2e6 100644
--- a/src/Testbench/Constraint.h
+++ b/src/Testbench/Constraint.h
@@ -24,9 +24,9 @@
 #ifndef CONSTRAINT_H
 #define CONSTRAINT_H
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/CoverGroupDefinition.h b/src/Testbench/CoverGroupDefinition.h
index fca7cb8..6767d44 100644
--- a/src/Testbench/CoverGroupDefinition.h
+++ b/src/Testbench/CoverGroupDefinition.h
@@ -24,9 +24,9 @@
 #ifndef COVERGROUPDEFINITION_H
 #define COVERGROUPDEFINITION_H
 
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../SourceCompile/VObjectTypes.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "SourceCompile/VObjectTypes.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/FunctionMethod.h b/src/Testbench/FunctionMethod.h
index e08c2dd..cb959fc 100644
--- a/src/Testbench/FunctionMethod.h
+++ b/src/Testbench/FunctionMethod.h
@@ -24,7 +24,7 @@
 #ifndef FUNCTIONMETHOD_H
 #define FUNCTIONMETHOD_H
 
-#include "../Design/Function.h"
+#include "Design/Function.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/Program.cpp b/src/Testbench/Program.cpp
index 66ebbd0..71faeeb 100644
--- a/src/Testbench/Program.cpp
+++ b/src/Testbench/Program.cpp
@@ -20,9 +20,9 @@
  *
  * Created on June 1, 2018, 8:58 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../Design/DesignComponent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/DesignComponent.h"
 #include "Program.h"
 
 using namespace SURELOG;
diff --git a/src/Testbench/Program.h b/src/Testbench/Program.h
index 751479d..f9f9ed3 100644
--- a/src/Testbench/Program.h
+++ b/src/Testbench/Program.h
@@ -23,8 +23,8 @@
 
 #ifndef PROGRAM_H
 #define PROGRAM_H
-#include "../Design/DesignComponent.h"
-#include "../Common/ClockingBlockHolder.h"
+#include "Design/DesignComponent.h"
+#include "Common/ClockingBlockHolder.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/Property.cpp b/src/Testbench/Property.cpp
index b907612..1918de6 100644
--- a/src/Testbench/Property.cpp
+++ b/src/Testbench/Property.cpp
@@ -20,9 +20,9 @@
  *
  * Created on January 23, 2019, 9:17 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../Design/DesignComponent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/DesignComponent.h"
 #include "Property.h"
 
 using namespace SURELOG;
diff --git a/src/Testbench/Property.h b/src/Testbench/Property.h
index 4df6f7f..c933216 100644
--- a/src/Testbench/Property.h
+++ b/src/Testbench/Property.h
@@ -24,7 +24,7 @@
 #ifndef PROPERTY_H
 #define PROPERTY_H
 
-#include "../Design/DataType.h"
+#include "Design/DataType.h"
 #include "Variable.h"
 
 namespace SURELOG {
diff --git a/src/Testbench/TaskMethod.h b/src/Testbench/TaskMethod.h
index f04390c..dde1bcd 100644
--- a/src/Testbench/TaskMethod.h
+++ b/src/Testbench/TaskMethod.h
@@ -24,7 +24,7 @@
 #ifndef TASKMETHOD_H
 #define TASKMETHOD_H
 
-#include "../Design/Task.h"
+#include "Design/Task.h"
 
 namespace SURELOG {
 
diff --git a/src/Testbench/TypeDef.cpp b/src/Testbench/TypeDef.cpp
index 3cdcd16..e75a792 100644
--- a/src/Testbench/TypeDef.cpp
+++ b/src/Testbench/TypeDef.cpp
@@ -20,9 +20,9 @@
  *
  * Created on March 6, 2019, 9:14 PM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../SourceCompile/VObjectTypes.h"
-#include "../Design/FileContent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "SourceCompile/VObjectTypes.h"
+#include "Design/FileContent.h"
 #include "TypeDef.h"
 
 using namespace SURELOG;
diff --git a/src/Testbench/TypeDef.h b/src/Testbench/TypeDef.h
index 088e3fe..ff5d770 100644
--- a/src/Testbench/TypeDef.h
+++ b/src/Testbench/TypeDef.h
@@ -25,8 +25,8 @@
 #define TYPEDEF_H
 
 #include <string>
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/DataType.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/DataType.h"
 
 namespace SURELOG {
 class FileContent;
diff --git a/src/Testbench/Variable.cpp b/src/Testbench/Variable.cpp
index 1901e72..72b712b 100644
--- a/src/Testbench/Variable.cpp
+++ b/src/Testbench/Variable.cpp
@@ -20,9 +20,9 @@
  *
  * Created on May 26, 2019, 10:42 AM
  */
-#include "../SourceCompile/SymbolTable.h"
-#include "../Design/FileContent.h"
-#include "../Design/DesignComponent.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Design/FileContent.h"
+#include "Design/DesignComponent.h"
 #include "Variable.h"
 
 using namespace SURELOG;
diff --git a/src/Utils/FileUtils.cpp b/src/Utils/FileUtils.cpp
index 3d0807c..dc4310f 100644
--- a/src/Utils/FileUtils.cpp
+++ b/src/Utils/FileUtils.cpp
@@ -21,9 +21,9 @@
  * Created on March 16, 2017, 11:02 PM
  */
 
-#include "../SourceCompile/SymbolTable.h"
-#include "FileUtils.h"
-#include "StringUtils.h"
+#include "SourceCompile/SymbolTable.h"
+#include "Utils/FileUtils.h"
+#include "Utils/StringUtils.h"
 #include <sys/stat.h>
 #include <unistd.h>
 #include <string.h>
diff --git a/src/Utils/HashMap.h b/src/Utils/HashMap.h
deleted file mode 100644
index cbb2635..0000000
--- a/src/Utils/HashMap.h
+++ /dev/null
@@ -1,361 +0,0 @@
-
-#ifndef HASHMAP_H
-#define HASHMAP_H
-#include <iostream>
-#include <iomanip>
-#include <exception>
-#include <mutex>
-#include <condition_variable>
-
-/*
- *  wrapper for items stored in the map
- */
-template <typename K, typename V>
-class HashItem {
- public:
-  HashItem(K key, V value) {
-    this->key = key;
-    this->value = value;
-    this->nextItem = nullptr;
-  }
-
-  /*
-   * copy constructor
-   */
-  HashItem(const HashItem &item) {
-    this->key = item.getKey();
-    this->value = item.getValue();
-    this->nextItem = nullptr;
-  }
-
-  void setNext(HashItem<K, V> *item) { this->nextItem = item; }
-
-  HashItem *getNext() { return nextItem; }
-
-  K getKey() { return key; }
-
-  V getValue() { return value; }
-
-  void setValue(V value) { this->value = value; }
-
- private:
-  K key;
-  V value;
-  HashItem *nextItem;
-};
-
-/*
- * template HashMap for storing items
- * default hash function HF = std::hash<K>
- */
-template <typename K, typename V, typename HF = std::hash<K>>
-class HashMap {
- public:
-  /*
-   * constructor
-   * @mSize specifies the bucket size og the map
-   */
-  HashMap(std::size_t mSize) {
-    // lock initialization for single thread
-    std::lock_guard<std::mutex> lock(mtx);
-    // if (mSize < 1)
-    // throw std::exception("Number of buckets ust be greater than zero.");
-
-    mapSize = mSize;
-    numOfItems = 0;
-    // initialize
-    hMap = new HashItem<K, V> *[mapSize]();
-  }
-
-  /*
-   * for simplicity no copy constructor
-   * anyway we want test how different threads
-   * use same instance of the map
-   */
-  // HashMap(const HashMap & hmap) = delete;
-
-  /*
-   * inserts item
-   * replaces old value with the new one when item already exists
-   * @key key of the item
-   * @value value of the item
-   */
-  void insert(const K &key, const V &value) {
-    std::lock_guard<std::mutex> lock(mtx);
-    insertHelper(this->hMap, this->mapSize, numOfItems, key, value);
-    condVar.notify_all();
-  }
-
-  /*
-   * erases item with key when siúch item exists
-   * @key of item to erase
-   */
-  void erase(const K &key) {
-    std::lock_guard<std::mutex> lock(mtx);
-    // calculate the bucket where item must be inserted
-    std::size_t hVal = hashFunc(key) % mapSize;
-    HashItem<K, V> *prev = nullptr;
-    HashItem<K, V> *item = hMap[hVal];
-
-    while ((item != nullptr) && (item->getKey() != key)) {
-      prev = item;
-      item = item->getNext();
-    }
-    // no item found with the given key
-    if (item == nullptr) {
-      return;
-    } else {
-      if (prev == nullptr) {
-        // item found is the first item in the bucket
-        hMap[hVal] = item->getNext();
-      } else {
-        // item found in one of the entries in the bucket
-        prev->setNext(item->getNext());
-      }
-      delete item;
-      numOfItems--;
-    }
-    condVar.notify_all();
-  }
-
-  /*
-   * get element with the given key by reference
-   * @key is the key of item that has to be found
-   * @value is the holder where the value of item with key will be copied
-   */
-  bool getItem(const K &key, V &value) const {
-    std::lock_guard<std::mutex> lock(mtx);
-    // calculate the bucket where item must be inserted
-    std::size_t hVal = hashFunc(key) % mapSize;
-    HashItem<K, V> *item = hMap[hVal];
-
-    while ((item != nullptr) && (item->getKey() != key)) item = item->getNext();
-    // item not found
-    if (item == nullptr) {
-      return false;
-    }
-
-    value = item->getValue();
-    return true;
-  }
-
-  /*
-   * get element with the given key by reference
-   * @key is the key of item that has to be found
-   * shows an example of thread waitung for some condition
-   * @value is the holder where the value of item with key will be copied
-   */
-  bool getWithWait(const K &key, V &value) {
-    std::unique_lock<std::mutex> ulock(mtxForWait);
-    condVar.wait(ulock, [this] { return !this->empty(); });
-    // calculate the bucket where item must be inserted
-    std::size_t hVal = hashFunc(key) % mapSize;
-    HashItem<K, V> *item = hMap[hVal];
-
-    while ((item != nullptr) && (item->getKey() != key)) item = item->getNext();
-    // item not found
-    if (item == nullptr) {
-      return false;
-    }
-
-    value = item->getValue();
-    return true;
-  }
-
-  /*
-   * resizes the map
-   * creates new map on heap
-   * copies the elements into new map
-   * @newSize specifies new bucket size
-   */
-  void resize(std::size_t newSize) {
-    std::lock_guard<std::mutex> lock(mtx);
-    if (newSize < 1)
-      throw std::exception("Number of buckets must be greater than zero.");
-
-    resizeHelper(newSize);
-    condVar.notify_all();
-  }
-
-  /*
-   * outputs all items of the map
-   */
-  void outputMap() const {
-    std::lock_guard<std::mutex> lock(mtx);
-    if (numOfItems == 0) {
-      std::cout << "Map is empty." << std::endl << std::endl;
-      return;
-    }
-    std::cout << "Map contains " << numOfItems << " items." << std::endl;
-    for (std::size_t i = 0; i < mapSize; i++) {
-      HashItem<K, V> *item = hMap[i];
-      while (item != nullptr) {
-        std::cout << "Bucket: " << std::setw(3) << i
-                  << ", key: " << std::setw(3) << item->getKey()
-                  << ", value:" << std::setw(3) << item->getValue()
-                  << std::endl;
-        item = item->getNext();
-      }
-    }
-    std::cout << std::endl;
-  }
-
-  /*
-   * returns true when map has no items
-   */
-  bool empty() const {
-    std::lock_guard<std::mutex> lock(mtx);
-    return numOfItems == 0;
-  }
-
-  void clear() {
-    std::lock_guard<std::mutex> lock(mtx);
-    deleteMap(hMap, mapSize);
-    numOfItems = 0;
-    hMap = new HashItem<K, V> *[mapSize]();
-  }
-
-  void deleteDeep() {
-    std::lock_guard<std::mutex> lock(mtx);
-    deleteMapDeep(hMap, mapSize);
-    numOfItems = 0;
-    hMap = new HashItem<K, V> *[mapSize]();
-  }
-
-  /*
-   * returns number of items stored in the map
-   */
-  std::size_t size() const {
-    std::lock_guard<std::mutex> lock(mtx);
-    return numOfItems;
-  }
-
-  /*
-   * returns number of buckets
-   */
-  std::size_t bucket_count() const {
-    std::lock_guard<std::mutex> lock(mtx);
-    return mapSize;
-  }
-
-  /*
-   * desctructor
-   */
-  ~HashMap() {
-    std::lock_guard<std::mutex> lock(mtx);
-    deleteMap(hMap, mapSize);
-  }
-
- private:
-  std::size_t mapSize;
-  std::size_t numOfItems;
-  HF hashFunc;
-  HashItem<K, V> **hMap;
-  mutable std::mutex mtx;
-  mutable std::mutex mtxForWait;
-  std::condition_variable condVar;
-
-  /*
-   * help method for inserting key, value item into the map hm
-   * mapSize specifies the size of the map, items - the number
-   * of stored items, will be incremented when insertion is completed
-   * @hm HashMap
-   * @mSize specifies number of buckets
-   * @items holds the number of items in hm, will be incremented when insertion
-   * successful
-   * @key - key of item to insert
-   * @value - value of item to insert
-   */
-  void insertHelper(HashItem<K, V> **hm, const std::size_t &mSize,
-                    std::size_t &items, const K &key, const V &value) {
-    std::size_t hVal = hashFunc(key) % mSize;
-    HashItem<K, V> *prev = nullptr;
-    HashItem<K, V> *item = hm[hVal];
-
-    while ((item != nullptr) && (item->getKey() != key)) {
-      prev = item;
-      item = item->getNext();
-    }
-
-    // inserting new item
-    if (item == nullptr) {
-      item = new HashItem<K, V>(key, value);
-      items++;
-      if (prev == nullptr) {
-        // insert new value as first item in the bucket
-        hm[hVal] = item;
-      } else {
-        // append new item on previous in the same bucket
-        prev->setNext(item);
-      }
-    } else {
-      // replace existing value
-      item->setValue(value);
-    }
-  }
-
-  /*
-   * help method to resize the map
-   * @newSize specifies new number of buckets
-   */
-  void resizeHelper(std::size_t newSize) {
-    HashItem<K, V> **newMap = new HashItem<K, V> *[newSize]();
-    std::size_t items = 0;
-    for (std::size_t i = 0; i < mapSize; i++) {
-      HashItem<K, V> *item = hMap[i];
-      while (item != nullptr) {
-        insertHelper(newMap, newSize, items, item->getKey(), item->getValue());
-        item = item->getNext();
-      }
-    }
-
-    deleteMap(hMap, mapSize);
-    hMap = newMap;
-    mapSize = newSize;
-    numOfItems = items;
-    newMap = nullptr;
-  }
-
-  /*
-   * help function for deleting the map hm
-   * @hm HashMap
-   * @mSize number of buckets in hm
-   */
-  void deleteMap(HashItem<K, V> **hm, std::size_t mSize) {
-    // delete all nodes
-    for (std::size_t i = 0; i < mSize; ++i) {
-      HashItem<K, V> *item = hm[i];
-      while (item != nullptr) {
-        HashItem<K, V> *prev = item;
-        item = item->getNext();
-        delete prev;
-      }
-      hm[i] = nullptr;
-    }
-    // delete the map
-    delete[] hm;
-  }
-
-  /*
-   * help function for deleting the map hm
-   * @hm HashMap
-   * @mSize number of buckets in hm
-   */
-  void deleteMapDeep(HashItem<K, V> **hm, std::size_t mSize) {
-    // delete all nodes
-    for (std::size_t i = 0; i < mSize; ++i) {
-      HashItem<K, V> *item = hm[i];
-      while (item != nullptr) {
-        HashItem<K, V> *prev = item;
-        item = item->getNext();
-        delete prev->getValue();
-        delete prev;
-      }
-      hm[i] = nullptr;
-    }
-    // delete the map
-    delete[] hm;
-  }
-};
-
-#endif /* HASHMAP_H */
diff --git a/src/Utils/ParseUtils.cpp b/src/Utils/ParseUtils.cpp
index e5b4dc2..c0e0f2c 100644
--- a/src/Utils/ParseUtils.cpp
+++ b/src/Utils/ParseUtils.cpp
@@ -24,7 +24,7 @@
 #include "antlr4-runtime.h"
 using namespace antlr4;
 #include <vector>
-#include "ParseUtils.h"
+#include "Utils/ParseUtils.h"
 
 using namespace SURELOG;
 
diff --git a/src/Utils/StringUtils.cpp b/src/Utils/StringUtils.cpp
index 06622d7..69f9ede 100644
--- a/src/Utils/StringUtils.cpp
+++ b/src/Utils/StringUtils.cpp
@@ -21,7 +21,7 @@
  * Created on March 14, 2017, 10:43 PM
  */
 
-#include "StringUtils.h"
+#include "Utils/StringUtils.h"
 #include <algorithm>
 #include <locale>
 #include <regex>
diff --git a/src/Utils/Timer.h b/src/Utils/Timer.h
index 6ac1dd9..1dd4804 100644
--- a/src/Utils/Timer.h
+++ b/src/Utils/Timer.h
@@ -25,7 +25,7 @@
 #define TIMER_H
 #include <iostream>
 #include <chrono>
-#include "math.h"
+#include <math.h>
 
 namespace SURELOG {
 
diff --git a/src/main.cpp b/src/main.cpp
index d9efe97..c4f6f24 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -27,7 +27,7 @@
 #include<stdio.h>
 #include<sys/types.h>
 #include <unistd.h>
-#include "CommandLine/CommandLineParser.hpp"
+#include "CommandLine/CommandLineParser.h"
 #include "SourceCompile/SymbolTable.h"
 #include "SourceCompile/CompilationUnit.h"
 #include "SourceCompile/PreprocessFile.h"
diff --git a/src/parser/SV3_1aLexer.cpp b/src/parser/SV3_1aLexer.cpp
index 3ef52cd..9cae3af 100644
--- a/src/parser/SV3_1aLexer.cpp
+++ b/src/parser/SV3_1aLexer.cpp
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aLexer.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aLexer.g4 by ANTLR 4.7.2
 
 
 #include "SV3_1aLexer.h"
diff --git a/src/parser/SV3_1aLexer.h b/src/parser/SV3_1aLexer.h
index 7abe61a..0752d25 100644
--- a/src/parser/SV3_1aLexer.h
+++ b/src/parser/SV3_1aLexer.h
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aLexer.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aLexer.g4 by ANTLR 4.7.2
 
 #pragma once
 
diff --git a/src/parser/SV3_1aParser.cpp b/src/parser/SV3_1aParser.cpp
index 8dd9419..b96cfb7 100644
--- a/src/parser/SV3_1aParser.cpp
+++ b/src/parser/SV3_1aParser.cpp
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 
 #include "SV3_1aParserListener.h"
@@ -28800,6 +28800,7 @@
   size_t parentState = getState();
   SV3_1aParser::Property_exprContext *_localctx = _tracker.createInstance<Property_exprContext>(_ctx, parentState);
   SV3_1aParser::Property_exprContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 470;
   enterRecursionRule(_localctx, 470, SV3_1aParser::RuleProperty_expr, precedence);
 
@@ -29889,6 +29890,7 @@
   size_t parentState = getState();
   SV3_1aParser::Sequence_exprContext *_localctx = _tracker.createInstance<Sequence_exprContext>(_ctx, parentState);
   SV3_1aParser::Sequence_exprContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 478;
   enterRecursionRule(_localctx, 478, SV3_1aParser::RuleSequence_expr, precedence);
 
@@ -33629,6 +33631,7 @@
   size_t parentState = getState();
   SV3_1aParser::Block_event_expressionContext *_localctx = _tracker.createInstance<Block_event_expressionContext>(_ctx, parentState);
   SV3_1aParser::Block_event_expressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 540;
   enterRecursionRule(_localctx, 540, SV3_1aParser::RuleBlock_event_expression, precedence);
 
@@ -36119,6 +36122,7 @@
   size_t parentState = getState();
   SV3_1aParser::Select_expressionContext *_localctx = _tracker.createInstance<Select_expressionContext>(_ctx, parentState);
   SV3_1aParser::Select_expressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 576;
   enterRecursionRule(_localctx, 576, SV3_1aParser::RuleSelect_expression, precedence);
 
@@ -51254,6 +51258,7 @@
   size_t parentState = getState();
   SV3_1aParser::Event_expressionContext *_localctx = _tracker.createInstance<Event_expressionContext>(_ctx, parentState);
   SV3_1aParser::Event_expressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 822;
   enterRecursionRule(_localctx, 822, SV3_1aParser::RuleEvent_expression, precedence);
 
@@ -70685,6 +70690,7 @@
   size_t parentState = getState();
   SV3_1aParser::Constant_expressionContext *_localctx = _tracker.createInstance<Constant_expressionContext>(_ctx, parentState);
   SV3_1aParser::Constant_expressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 1166;
   enterRecursionRule(_localctx, 1166, SV3_1aParser::RuleConstant_expression, precedence);
 
@@ -71451,6 +71457,7 @@
   size_t parentState = getState();
   SV3_1aParser::ExpressionContext *_localctx = _tracker.createInstance<ExpressionContext>(_ctx, parentState);
   SV3_1aParser::ExpressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 1182;
   enterRecursionRule(_localctx, 1182, SV3_1aParser::RuleExpression, precedence);
 
@@ -72087,6 +72094,7 @@
   size_t parentState = getState();
   SV3_1aParser::Module_path_expressionContext *_localctx = _tracker.createInstance<Module_path_expressionContext>(_ctx, parentState);
   SV3_1aParser::Module_path_expressionContext *previousContext = _localctx;
+  (void)previousContext; // Silence compiler, in case the context is not used by generated code.
   size_t startState = 1190;
   enterRecursionRule(_localctx, 1190, SV3_1aParser::RuleModule_path_expression, precedence);
 
diff --git a/src/parser/SV3_1aParser.h b/src/parser/SV3_1aParser.h
index 174bec7..692a631 100644
--- a/src/parser/SV3_1aParser.h
+++ b/src/parser/SV3_1aParser.h
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 #pragma once
 
@@ -1711,7 +1711,7 @@
   public:
     Timeunits_declarationContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Timeunits_declarationContext() : antlr4::ParserRuleContext() { }
+    Timeunits_declarationContext() = default;
     void copyFrom(Timeunits_declarationContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -1931,7 +1931,7 @@
   public:
     Port_directionContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Port_directionContext() : antlr4::ParserRuleContext() { }
+    Port_directionContext() = default;
     void copyFrom(Port_directionContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -2595,7 +2595,7 @@
   public:
     Class_item_qualifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Class_item_qualifierContext() : antlr4::ParserRuleContext() { }
+    Class_item_qualifierContext() = default;
     void copyFrom(Class_item_qualifierContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -2637,7 +2637,7 @@
   public:
     Property_qualifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Property_qualifierContext() : antlr4::ParserRuleContext() { }
+    Property_qualifierContext() = default;
     void copyFrom(Property_qualifierContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -2679,7 +2679,7 @@
   public:
     Method_qualifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Method_qualifierContext() : antlr4::ParserRuleContext() { }
+    Method_qualifierContext() = default;
     void copyFrom(Method_qualifierContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -2957,7 +2957,7 @@
   public:
     Dist_weightContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Dist_weightContext() : antlr4::ParserRuleContext() { }
+    Dist_weightContext() = default;
     void copyFrom(Dist_weightContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -3501,7 +3501,7 @@
   public:
     LifetimeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    LifetimeContext() : antlr4::ParserRuleContext() { }
+    LifetimeContext() = default;
     void copyFrom(LifetimeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -3799,7 +3799,7 @@
   public:
     Integer_atom_typeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Integer_atom_typeContext() : antlr4::ParserRuleContext() { }
+    Integer_atom_typeContext() = default;
     void copyFrom(Integer_atom_typeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -3860,7 +3860,7 @@
   public:
     Integer_vector_typeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Integer_vector_typeContext() : antlr4::ParserRuleContext() { }
+    Integer_vector_typeContext() = default;
     void copyFrom(Integer_vector_typeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -3902,7 +3902,7 @@
   public:
     Non_integer_typeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Non_integer_typeContext() : antlr4::ParserRuleContext() { }
+    Non_integer_typeContext() = default;
     void copyFrom(Non_integer_typeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -3944,7 +3944,7 @@
   public:
     Net_typeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Net_typeContext() : antlr4::ParserRuleContext() { }
+    Net_typeContext() = default;
     void copyFrom(Net_typeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -4115,7 +4115,7 @@
   public:
     SigningContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    SigningContext() : antlr4::ParserRuleContext() { }
+    SigningContext() = default;
     void copyFrom(SigningContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -4163,7 +4163,7 @@
   public:
     Random_qualifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Random_qualifierContext() : antlr4::ParserRuleContext() { }
+    Random_qualifierContext() = default;
     void copyFrom(Random_qualifierContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -4292,7 +4292,7 @@
   public:
     Strength0Context(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Strength0Context() : antlr4::ParserRuleContext() { }
+    Strength0Context() = default;
     void copyFrom(Strength0Context *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -4343,7 +4343,7 @@
   public:
     Strength1Context(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Strength1Context() : antlr4::ParserRuleContext() { }
+    Strength1Context() = default;
     void copyFrom(Strength1Context *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -4394,7 +4394,7 @@
   public:
     Charge_strengthContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Charge_strengthContext() : antlr4::ParserRuleContext() { }
+    Charge_strengthContext() = default;
     void copyFrom(Charge_strengthContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -5263,7 +5263,7 @@
   public:
     Tf_port_directionContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Tf_port_directionContext() : antlr4::ParserRuleContext() { }
+    Tf_port_directionContext() = default;
     void copyFrom(Tf_port_directionContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -5400,7 +5400,7 @@
   public:
     Overload_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Overload_operatorContext() : antlr4::ParserRuleContext() { }
+    Overload_operatorContext() = default;
     void copyFrom(Overload_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -6191,7 +6191,7 @@
   public:
     Sequence_formal_typeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Sequence_formal_typeContext() : antlr4::ParserRuleContext() { }
+    Sequence_formal_typeContext() = default;
     void copyFrom(Sequence_formal_typeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -6786,7 +6786,7 @@
   public:
     Bins_keywordContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Bins_keywordContext() : antlr4::ParserRuleContext() { }
+    Bins_keywordContext() = default;
     void copyFrom(Bins_keywordContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7305,7 +7305,7 @@
   public:
     Pulldown_strengthContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Pulldown_strengthContext() : antlr4::ParserRuleContext() { }
+    Pulldown_strengthContext() = default;
     void copyFrom(Pulldown_strengthContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7357,7 +7357,7 @@
   public:
     Pullup_strengthContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Pullup_strengthContext() : antlr4::ParserRuleContext() { }
+    Pullup_strengthContext() = default;
     void copyFrom(Pullup_strengthContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7409,7 +7409,7 @@
   public:
     Cmos_switchtypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Cmos_switchtypeContext() : antlr4::ParserRuleContext() { }
+    Cmos_switchtypeContext() = default;
     void copyFrom(Cmos_switchtypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7442,7 +7442,7 @@
   public:
     Enable_gatetypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Enable_gatetypeContext() : antlr4::ParserRuleContext() { }
+    Enable_gatetypeContext() = default;
     void copyFrom(Enable_gatetypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7493,7 +7493,7 @@
   public:
     Mos_switchtypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Mos_switchtypeContext() : antlr4::ParserRuleContext() { }
+    Mos_switchtypeContext() = default;
     void copyFrom(Mos_switchtypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7544,7 +7544,7 @@
   public:
     N_input_gatetypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    N_input_gatetypeContext() : antlr4::ParserRuleContext() { }
+    N_input_gatetypeContext() = default;
     void copyFrom(N_input_gatetypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7613,7 +7613,7 @@
   public:
     N_output_gatetypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    N_output_gatetypeContext() : antlr4::ParserRuleContext() { }
+    N_output_gatetypeContext() = default;
     void copyFrom(N_output_gatetypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7646,7 +7646,7 @@
   public:
     Pass_en_switchtypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Pass_en_switchtypeContext() : antlr4::ParserRuleContext() { }
+    Pass_en_switchtypeContext() = default;
     void copyFrom(Pass_en_switchtypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -7697,7 +7697,7 @@
   public:
     Pass_switchtypeContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Pass_switchtypeContext() : antlr4::ParserRuleContext() { }
+    Pass_switchtypeContext() = default;
     void copyFrom(Pass_switchtypeContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -8809,7 +8809,7 @@
   public:
     Init_valContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Init_valContext() : antlr4::ParserRuleContext() { }
+    Init_valContext() = default;
     void copyFrom(Init_valContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -9193,7 +9193,7 @@
   public:
     Always_keywordContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Always_keywordContext() : antlr4::ParserRuleContext() { }
+    Always_keywordContext() = default;
     void copyFrom(Always_keywordContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -9285,7 +9285,7 @@
   public:
     Assignment_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Assignment_operatorContext() : antlr4::ParserRuleContext() { }
+    Assignment_operatorContext() = default;
     void copyFrom(Assignment_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -9954,7 +9954,7 @@
   public:
     Case_keywordContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Case_keywordContext() : antlr4::ParserRuleContext() { }
+    Case_keywordContext() = default;
     void copyFrom(Case_keywordContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -10702,7 +10702,7 @@
   public:
     Default_skewContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Default_skewContext() : antlr4::ParserRuleContext() { }
+    Default_skewContext() = default;
     void copyFrom(Default_skewContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -10749,7 +10749,7 @@
   public:
     Clocking_directionContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Clocking_directionContext() : antlr4::ParserRuleContext() { }
+    Clocking_directionContext() = default;
     void copyFrom(Clocking_directionContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -10859,7 +10859,7 @@
   public:
     Edge_identifierContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Edge_identifierContext() : antlr4::ParserRuleContext() { }
+    Edge_identifierContext() = default;
     void copyFrom(Edge_identifierContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -12237,7 +12237,7 @@
   public:
     Timing_check_event_controlContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Timing_check_event_controlContext() : antlr4::ParserRuleContext() { }
+    Timing_check_event_controlContext() = default;
     void copyFrom(Timing_check_event_controlContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -12360,7 +12360,7 @@
   public:
     Scalar_constantContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Scalar_constantContext() : antlr4::ParserRuleContext() { }
+    Scalar_constantContext() = default;
     void copyFrom(Scalar_constantContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -13703,7 +13703,7 @@
   public:
     Unary_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Unary_operatorContext() : antlr4::ParserRuleContext() { }
+    Unary_operatorContext() = default;
     void copyFrom(Unary_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -13817,7 +13817,7 @@
   public:
     Binary_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Binary_operatorContext() : antlr4::ParserRuleContext() { }
+    Binary_operatorContext() = default;
     void copyFrom(Binary_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -14129,7 +14129,7 @@
   public:
     Inc_or_dec_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Inc_or_dec_operatorContext() : antlr4::ParserRuleContext() { }
+    Inc_or_dec_operatorContext() = default;
     void copyFrom(Inc_or_dec_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -14162,7 +14162,7 @@
   public:
     Unary_module_path_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Unary_module_path_operatorContext() : antlr4::ParserRuleContext() { }
+    Unary_module_path_operatorContext() = default;
     void copyFrom(Unary_module_path_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -14258,7 +14258,7 @@
   public:
     Binary_module_path_operatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    Binary_module_path_operatorContext() : antlr4::ParserRuleContext() { }
+    Binary_module_path_operatorContext() = default;
     void copyFrom(Binary_module_path_operatorContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
@@ -14354,7 +14354,7 @@
   public:
     NumberContext(antlr4::ParserRuleContext *parent, size_t invokingState);
    
-    NumberContext() : antlr4::ParserRuleContext() { }
+    NumberContext() = default;
     void copyFrom(NumberContext *context);
     using antlr4::ParserRuleContext::copyFrom;
 
diff --git a/src/parser/SV3_1aParserBaseListener.cpp b/src/parser/SV3_1aParserBaseListener.cpp
index ca75084..8ed1556 100644
--- a/src/parser/SV3_1aParserBaseListener.cpp
+++ b/src/parser/SV3_1aParserBaseListener.cpp
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 
 #include "SV3_1aParserBaseListener.h"
diff --git a/src/parser/SV3_1aParserBaseListener.h b/src/parser/SV3_1aParserBaseListener.h
index d0baaa4..bfe80ad 100644
--- a/src/parser/SV3_1aParserBaseListener.h
+++ b/src/parser/SV3_1aParserBaseListener.h
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 #pragma once
 
diff --git a/src/parser/SV3_1aParserListener.cpp b/src/parser/SV3_1aParserListener.cpp
index 5f32f42..c062014 100644
--- a/src/parser/SV3_1aParserListener.cpp
+++ b/src/parser/SV3_1aParserListener.cpp
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 
 #include "SV3_1aParserListener.h"
diff --git a/src/parser/SV3_1aParserListener.h b/src/parser/SV3_1aParserListener.h
index 5ec8514..79e3655 100644
--- a/src/parser/SV3_1aParserListener.h
+++ b/src/parser/SV3_1aParserListener.h
@@ -1,5 +1,5 @@
 
-// Generated from SV3_1aParser.g4 by ANTLR 4.7.1
+// Generated from /home/alain/Surelog/grammar/SV3_1aParser.g4 by ANTLR 4.7.2
 
 #pragma once
 
diff --git a/src/parser/SV3_1aPpParser.cpp b/src/parser/SV3_1aPpParser.cpp
index 074908c..e7947b1 100644
--- a/src/parser/SV3_1aPpParser.cpp
+++ b/src/parser/SV3_1aPpParser.cpp
@@ -3,7 +3,6 @@
 
 
 #include "SV3_1aPpParserListener.h"
-#include "SV3_1aPpParserVisitor.h"
 
 #include "SV3_1aPpParser.h"
 
@@ -63,14 +62,6 @@
     parserListener->exitSource_text(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Source_textContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSource_text(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Source_textContext* SV3_1aPpParser::source_text() {
   Source_textContext *_localctx = _tracker.createInstance<Source_textContext>(_ctx, getState());
   enterRule(_localctx, 0, SV3_1aPpParser::RuleSource_text);
@@ -510,14 +501,6 @@
     parserListener->exitDescription(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::DescriptionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDescription(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::DescriptionContext* SV3_1aPpParser::description() {
   DescriptionContext *_localctx = _tracker.createInstance<DescriptionContext>(_ctx, getState());
   enterRule(_localctx, 2, SV3_1aPpParser::RuleDescription);
@@ -1109,13 +1092,6 @@
   if (parserListener != nullptr)
     parserListener->exitMacroInstanceWithArgs(this);
 }
-
-antlrcpp::Any SV3_1aPpParser::MacroInstanceWithArgsContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacroInstanceWithArgs(this);
-  else
-    return visitor->visitChildren(this);
-}
 //----------------- MacroInstanceNoArgsContext ------------------------------------------------------------------
 
 tree::TerminalNode* SV3_1aPpParser::MacroInstanceNoArgsContext::Macro_identifier() {
@@ -1138,13 +1114,6 @@
   if (parserListener != nullptr)
     parserListener->exitMacroInstanceNoArgs(this);
 }
-
-antlrcpp::Any SV3_1aPpParser::MacroInstanceNoArgsContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacroInstanceNoArgs(this);
-  else
-    return visitor->visitChildren(this);
-}
 SV3_1aPpParser::Macro_instanceContext* SV3_1aPpParser::macro_instance() {
   Macro_instanceContext *_localctx = _tracker.createInstance<Macro_instanceContext>(_ctx, getState());
   enterRule(_localctx, 4, SV3_1aPpParser::RuleMacro_instance);
@@ -1258,14 +1227,6 @@
     parserListener->exitUnterminated_string(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Unterminated_stringContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUnterminated_string(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Unterminated_stringContext* SV3_1aPpParser::unterminated_string() {
   Unterminated_stringContext *_localctx = _tracker.createInstance<Unterminated_stringContext>(_ctx, getState());
   enterRule(_localctx, 6, SV3_1aPpParser::RuleUnterminated_string);
@@ -1360,14 +1321,6 @@
     parserListener->exitMacro_actual_args(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Macro_actual_argsContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacro_actual_args(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Macro_actual_argsContext* SV3_1aPpParser::macro_actual_args() {
   Macro_actual_argsContext *_localctx = _tracker.createInstance<Macro_actual_argsContext>(_ctx, getState());
   enterRule(_localctx, 8, SV3_1aPpParser::RuleMacro_actual_args);
@@ -1490,14 +1443,6 @@
     parserListener->exitComments(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::CommentsContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitComments(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::CommentsContext* SV3_1aPpParser::comments() {
   CommentsContext *_localctx = _tracker.createInstance<CommentsContext>(_ctx, getState());
   enterRule(_localctx, 10, SV3_1aPpParser::RuleComments);
@@ -1557,14 +1502,6 @@
     parserListener->exitNumber(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::NumberContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNumber(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::NumberContext* SV3_1aPpParser::number() {
   NumberContext *_localctx = _tracker.createInstance<NumberContext>(_ctx, getState());
   enterRule(_localctx, 12, SV3_1aPpParser::RuleNumber);
@@ -1614,14 +1551,6 @@
     parserListener->exitPound_delay(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Pound_delayContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPound_delay(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Pound_delayContext* SV3_1aPpParser::pound_delay() {
   Pound_delayContext *_localctx = _tracker.createInstance<Pound_delayContext>(_ctx, getState());
   enterRule(_localctx, 14, SV3_1aPpParser::RulePound_delay);
@@ -1687,14 +1616,6 @@
     parserListener->exitMacro_definition(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Macro_definitionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacro_definition(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Macro_definitionContext* SV3_1aPpParser::macro_definition() {
   Macro_definitionContext *_localctx = _tracker.createInstance<Macro_definitionContext>(_ctx, getState());
   enterRule(_localctx, 16, SV3_1aPpParser::RuleMacro_definition);
@@ -1792,14 +1713,6 @@
     parserListener->exitInclude_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Include_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitInclude_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Include_directive_one_lineContext* SV3_1aPpParser::include_directive_one_line() {
   Include_directive_one_lineContext *_localctx = _tracker.createInstance<Include_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 18, SV3_1aPpParser::RuleInclude_directive_one_line);
@@ -1882,14 +1795,6 @@
     parserListener->exitInclude_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Include_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitInclude_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Include_directiveContext* SV3_1aPpParser::include_directive() {
   Include_directiveContext *_localctx = _tracker.createInstance<Include_directiveContext>(_ctx, getState());
   enterRule(_localctx, 20, SV3_1aPpParser::RuleInclude_directive);
@@ -1984,14 +1889,6 @@
     parserListener->exitLine_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Line_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitLine_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Line_directive_one_lineContext* SV3_1aPpParser::line_directive_one_line() {
   Line_directive_one_lineContext *_localctx = _tracker.createInstance<Line_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 22, SV3_1aPpParser::RuleLine_directive_one_line);
@@ -2074,14 +1971,6 @@
     parserListener->exitLine_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Line_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitLine_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Line_directiveContext* SV3_1aPpParser::line_directive() {
   Line_directiveContext *_localctx = _tracker.createInstance<Line_directiveContext>(_ctx, getState());
   enterRule(_localctx, 24, SV3_1aPpParser::RuleLine_directive);
@@ -2153,14 +2042,6 @@
     parserListener->exitDefault_nettype_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_nettype_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_nettype_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_nettype_directive_one_lineContext* SV3_1aPpParser::default_nettype_directive_one_line() {
   Default_nettype_directive_one_lineContext *_localctx = _tracker.createInstance<Default_nettype_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 26, SV3_1aPpParser::RuleDefault_nettype_directive_one_line);
@@ -2231,14 +2112,6 @@
     parserListener->exitDefault_nettype_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_nettype_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_nettype_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_nettype_directiveContext* SV3_1aPpParser::default_nettype_directive() {
   Default_nettype_directiveContext *_localctx = _tracker.createInstance<Default_nettype_directiveContext>(_ctx, getState());
   enterRule(_localctx, 28, SV3_1aPpParser::RuleDefault_nettype_directive);
@@ -2292,14 +2165,6 @@
     parserListener->exitSv_file_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Sv_file_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSv_file_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Sv_file_directiveContext* SV3_1aPpParser::sv_file_directive() {
   Sv_file_directiveContext *_localctx = _tracker.createInstance<Sv_file_directiveContext>(_ctx, getState());
   enterRule(_localctx, 30, SV3_1aPpParser::RuleSv_file_directive);
@@ -2349,14 +2214,6 @@
     parserListener->exitSv_line_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Sv_line_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSv_line_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Sv_line_directiveContext* SV3_1aPpParser::sv_line_directive() {
   Sv_line_directiveContext *_localctx = _tracker.createInstance<Sv_line_directiveContext>(_ctx, getState());
   enterRule(_localctx, 32, SV3_1aPpParser::RuleSv_line_directive);
@@ -2418,14 +2275,6 @@
     parserListener->exitTimescale_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Timescale_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitTimescale_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Timescale_directive_one_lineContext* SV3_1aPpParser::timescale_directive_one_line() {
   Timescale_directive_one_lineContext *_localctx = _tracker.createInstance<Timescale_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 34, SV3_1aPpParser::RuleTimescale_directive_one_line);
@@ -2492,14 +2341,6 @@
     parserListener->exitTimescale_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Timescale_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitTimescale_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Timescale_directiveContext* SV3_1aPpParser::timescale_directive() {
   Timescale_directiveContext *_localctx = _tracker.createInstance<Timescale_directiveContext>(_ctx, getState());
   enterRule(_localctx, 36, SV3_1aPpParser::RuleTimescale_directive);
@@ -2567,14 +2408,6 @@
     parserListener->exitUndef_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Undef_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUndef_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Undef_directiveContext* SV3_1aPpParser::undef_directive() {
   Undef_directiveContext *_localctx = _tracker.createInstance<Undef_directiveContext>(_ctx, getState());
   enterRule(_localctx, 38, SV3_1aPpParser::RuleUndef_directive);
@@ -2703,14 +2536,6 @@
     parserListener->exitIfdef_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifdef_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfdef_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifdef_directive_one_lineContext* SV3_1aPpParser::ifdef_directive_one_line() {
   Ifdef_directive_one_lineContext *_localctx = _tracker.createInstance<Ifdef_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 40, SV3_1aPpParser::RuleIfdef_directive_one_line);
@@ -2876,14 +2701,6 @@
     parserListener->exitIfdef_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifdef_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfdef_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifdef_directiveContext* SV3_1aPpParser::ifdef_directive() {
   Ifdef_directiveContext *_localctx = _tracker.createInstance<Ifdef_directiveContext>(_ctx, getState());
   enterRule(_localctx, 42, SV3_1aPpParser::RuleIfdef_directive);
@@ -2976,14 +2793,6 @@
     parserListener->exitIfdef_directive_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifdef_directive_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfdef_directive_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifdef_directive_in_macro_bodyContext* SV3_1aPpParser::ifdef_directive_in_macro_body() {
   Ifdef_directive_in_macro_bodyContext *_localctx = _tracker.createInstance<Ifdef_directive_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 44, SV3_1aPpParser::RuleIfdef_directive_in_macro_body);
@@ -3113,14 +2922,6 @@
     parserListener->exitIfndef_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifndef_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfndef_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifndef_directive_one_lineContext* SV3_1aPpParser::ifndef_directive_one_line() {
   Ifndef_directive_one_lineContext *_localctx = _tracker.createInstance<Ifndef_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 46, SV3_1aPpParser::RuleIfndef_directive_one_line);
@@ -3286,14 +3087,6 @@
     parserListener->exitIfndef_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifndef_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfndef_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifndef_directiveContext* SV3_1aPpParser::ifndef_directive() {
   Ifndef_directiveContext *_localctx = _tracker.createInstance<Ifndef_directiveContext>(_ctx, getState());
   enterRule(_localctx, 48, SV3_1aPpParser::RuleIfndef_directive);
@@ -3386,14 +3179,6 @@
     parserListener->exitIfndef_directive_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Ifndef_directive_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIfndef_directive_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Ifndef_directive_in_macro_bodyContext* SV3_1aPpParser::ifndef_directive_in_macro_body() {
   Ifndef_directive_in_macro_bodyContext *_localctx = _tracker.createInstance<Ifndef_directive_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 50, SV3_1aPpParser::RuleIfndef_directive_in_macro_body);
@@ -3487,14 +3272,6 @@
     parserListener->exitElsif_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elsif_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElsif_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elsif_directive_one_lineContext* SV3_1aPpParser::elsif_directive_one_line() {
   Elsif_directive_one_lineContext *_localctx = _tracker.createInstance<Elsif_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 52, SV3_1aPpParser::RuleElsif_directive_one_line);
@@ -3580,14 +3357,6 @@
     parserListener->exitElsif_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elsif_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElsif_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elsif_directiveContext* SV3_1aPpParser::elsif_directive() {
   Elsif_directiveContext *_localctx = _tracker.createInstance<Elsif_directiveContext>(_ctx, getState());
   enterRule(_localctx, 54, SV3_1aPpParser::RuleElsif_directive);
@@ -3680,14 +3449,6 @@
     parserListener->exitElsif_directive_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elsif_directive_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElsif_directive_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elsif_directive_in_macro_bodyContext* SV3_1aPpParser::elsif_directive_in_macro_body() {
   Elsif_directive_in_macro_bodyContext *_localctx = _tracker.createInstance<Elsif_directive_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 56, SV3_1aPpParser::RuleElsif_directive_in_macro_body);
@@ -3781,14 +3542,6 @@
     parserListener->exitElseif_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elseif_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElseif_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elseif_directive_one_lineContext* SV3_1aPpParser::elseif_directive_one_line() {
   Elseif_directive_one_lineContext *_localctx = _tracker.createInstance<Elseif_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 58, SV3_1aPpParser::RuleElseif_directive_one_line);
@@ -3874,14 +3627,6 @@
     parserListener->exitElseif_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elseif_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElseif_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elseif_directiveContext* SV3_1aPpParser::elseif_directive() {
   Elseif_directiveContext *_localctx = _tracker.createInstance<Elseif_directiveContext>(_ctx, getState());
   enterRule(_localctx, 60, SV3_1aPpParser::RuleElseif_directive);
@@ -3974,14 +3719,6 @@
     parserListener->exitElseif_directive_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Elseif_directive_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElseif_directive_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Elseif_directive_in_macro_bodyContext* SV3_1aPpParser::elseif_directive_in_macro_body() {
   Elseif_directive_in_macro_bodyContext *_localctx = _tracker.createInstance<Elseif_directive_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 62, SV3_1aPpParser::RuleElseif_directive_in_macro_body);
@@ -4075,14 +3812,6 @@
     parserListener->exitElse_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Else_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElse_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Else_directive_one_lineContext* SV3_1aPpParser::else_directive_one_line() {
   Else_directive_one_lineContext *_localctx = _tracker.createInstance<Else_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 64, SV3_1aPpParser::RuleElse_directive_one_line);
@@ -4152,14 +3881,6 @@
     parserListener->exitElse_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Else_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitElse_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Else_directiveContext* SV3_1aPpParser::else_directive() {
   Else_directiveContext *_localctx = _tracker.createInstance<Else_directiveContext>(_ctx, getState());
   enterRule(_localctx, 66, SV3_1aPpParser::RuleElse_directive);
@@ -4229,14 +3950,6 @@
     parserListener->exitEndif_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endif_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndif_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endif_directive_one_lineContext* SV3_1aPpParser::endif_directive_one_line() {
   Endif_directive_one_lineContext *_localctx = _tracker.createInstance<Endif_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 68, SV3_1aPpParser::RuleEndif_directive_one_line);
@@ -4347,14 +4060,6 @@
     parserListener->exitEndif_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endif_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndif_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endif_directiveContext* SV3_1aPpParser::endif_directive() {
   Endif_directiveContext *_localctx = _tracker.createInstance<Endif_directiveContext>(_ctx, getState());
   enterRule(_localctx, 70, SV3_1aPpParser::RuleEndif_directive);
@@ -4444,14 +4149,6 @@
     parserListener->exitResetall_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Resetall_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitResetall_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Resetall_directive_one_lineContext* SV3_1aPpParser::resetall_directive_one_line() {
   Resetall_directive_one_lineContext *_localctx = _tracker.createInstance<Resetall_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 72, SV3_1aPpParser::RuleResetall_directive_one_line);
@@ -4514,14 +4211,6 @@
     parserListener->exitResetall_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Resetall_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitResetall_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Resetall_directiveContext* SV3_1aPpParser::resetall_directive() {
   Resetall_directiveContext *_localctx = _tracker.createInstance<Resetall_directiveContext>(_ctx, getState());
   enterRule(_localctx, 74, SV3_1aPpParser::RuleResetall_directive);
@@ -4583,14 +4272,6 @@
     parserListener->exitBegin_keywords_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Begin_keywords_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitBegin_keywords_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Begin_keywords_directive_one_lineContext* SV3_1aPpParser::begin_keywords_directive_one_line() {
   Begin_keywords_directive_one_lineContext *_localctx = _tracker.createInstance<Begin_keywords_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 76, SV3_1aPpParser::RuleBegin_keywords_directive_one_line);
@@ -4661,14 +4342,6 @@
     parserListener->exitBegin_keywords_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Begin_keywords_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitBegin_keywords_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Begin_keywords_directiveContext* SV3_1aPpParser::begin_keywords_directive() {
   Begin_keywords_directiveContext *_localctx = _tracker.createInstance<Begin_keywords_directiveContext>(_ctx, getState());
   enterRule(_localctx, 78, SV3_1aPpParser::RuleBegin_keywords_directive);
@@ -4734,14 +4407,6 @@
     parserListener->exitEnd_keywords_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::End_keywords_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEnd_keywords_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::End_keywords_directive_one_lineContext* SV3_1aPpParser::end_keywords_directive_one_line() {
   End_keywords_directive_one_lineContext *_localctx = _tracker.createInstance<End_keywords_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 80, SV3_1aPpParser::RuleEnd_keywords_directive_one_line);
@@ -4804,14 +4469,6 @@
     parserListener->exitEnd_keywords_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::End_keywords_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEnd_keywords_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::End_keywords_directiveContext* SV3_1aPpParser::end_keywords_directive() {
   End_keywords_directiveContext *_localctx = _tracker.createInstance<End_keywords_directiveContext>(_ctx, getState());
   enterRule(_localctx, 82, SV3_1aPpParser::RuleEnd_keywords_directive);
@@ -4873,14 +4530,6 @@
     parserListener->exitPragma_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Pragma_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPragma_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Pragma_directive_one_lineContext* SV3_1aPpParser::pragma_directive_one_line() {
   Pragma_directive_one_lineContext *_localctx = _tracker.createInstance<Pragma_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 84, SV3_1aPpParser::RulePragma_directive_one_line);
@@ -4967,14 +4616,6 @@
     parserListener->exitPragma_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Pragma_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPragma_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Pragma_directiveContext* SV3_1aPpParser::pragma_directive() {
   Pragma_directiveContext *_localctx = _tracker.createInstance<Pragma_directiveContext>(_ctx, getState());
   enterRule(_localctx, 86, SV3_1aPpParser::RulePragma_directive);
@@ -5067,14 +4708,6 @@
     parserListener->exitCelldefine_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Celldefine_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitCelldefine_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Celldefine_directive_one_lineContext* SV3_1aPpParser::celldefine_directive_one_line() {
   Celldefine_directive_one_lineContext *_localctx = _tracker.createInstance<Celldefine_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 88, SV3_1aPpParser::RuleCelldefine_directive_one_line);
@@ -5137,14 +4770,6 @@
     parserListener->exitCelldefine_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Celldefine_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitCelldefine_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Celldefine_directiveContext* SV3_1aPpParser::celldefine_directive() {
   Celldefine_directiveContext *_localctx = _tracker.createInstance<Celldefine_directiveContext>(_ctx, getState());
   enterRule(_localctx, 90, SV3_1aPpParser::RuleCelldefine_directive);
@@ -5206,14 +4831,6 @@
     parserListener->exitEndcelldefine_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endcelldefine_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndcelldefine_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endcelldefine_directive_one_lineContext* SV3_1aPpParser::endcelldefine_directive_one_line() {
   Endcelldefine_directive_one_lineContext *_localctx = _tracker.createInstance<Endcelldefine_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 92, SV3_1aPpParser::RuleEndcelldefine_directive_one_line);
@@ -5276,14 +4893,6 @@
     parserListener->exitEndcelldefine_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endcelldefine_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndcelldefine_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endcelldefine_directiveContext* SV3_1aPpParser::endcelldefine_directive() {
   Endcelldefine_directiveContext *_localctx = _tracker.createInstance<Endcelldefine_directiveContext>(_ctx, getState());
   enterRule(_localctx, 94, SV3_1aPpParser::RuleEndcelldefine_directive);
@@ -5345,14 +4954,6 @@
     parserListener->exitProtect_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Protect_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitProtect_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Protect_directive_one_lineContext* SV3_1aPpParser::protect_directive_one_line() {
   Protect_directive_one_lineContext *_localctx = _tracker.createInstance<Protect_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 96, SV3_1aPpParser::RuleProtect_directive_one_line);
@@ -5415,14 +5016,6 @@
     parserListener->exitProtect_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Protect_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitProtect_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Protect_directiveContext* SV3_1aPpParser::protect_directive() {
   Protect_directiveContext *_localctx = _tracker.createInstance<Protect_directiveContext>(_ctx, getState());
   enterRule(_localctx, 98, SV3_1aPpParser::RuleProtect_directive);
@@ -5484,14 +5077,6 @@
     parserListener->exitEndprotect_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endprotect_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprotect_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endprotect_directive_one_lineContext* SV3_1aPpParser::endprotect_directive_one_line() {
   Endprotect_directive_one_lineContext *_localctx = _tracker.createInstance<Endprotect_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 100, SV3_1aPpParser::RuleEndprotect_directive_one_line);
@@ -5554,14 +5139,6 @@
     parserListener->exitEndprotect_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endprotect_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprotect_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endprotect_directiveContext* SV3_1aPpParser::endprotect_directive() {
   Endprotect_directiveContext *_localctx = _tracker.createInstance<Endprotect_directiveContext>(_ctx, getState());
   enterRule(_localctx, 102, SV3_1aPpParser::RuleEndprotect_directive);
@@ -5623,14 +5200,6 @@
     parserListener->exitProtected_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Protected_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitProtected_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Protected_directive_one_lineContext* SV3_1aPpParser::protected_directive_one_line() {
   Protected_directive_one_lineContext *_localctx = _tracker.createInstance<Protected_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 104, SV3_1aPpParser::RuleProtected_directive_one_line);
@@ -5693,14 +5262,6 @@
     parserListener->exitProtected_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Protected_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitProtected_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Protected_directiveContext* SV3_1aPpParser::protected_directive() {
   Protected_directiveContext *_localctx = _tracker.createInstance<Protected_directiveContext>(_ctx, getState());
   enterRule(_localctx, 106, SV3_1aPpParser::RuleProtected_directive);
@@ -5762,14 +5323,6 @@
     parserListener->exitEndprotected_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endprotected_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprotected_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endprotected_directive_one_lineContext* SV3_1aPpParser::endprotected_directive_one_line() {
   Endprotected_directive_one_lineContext *_localctx = _tracker.createInstance<Endprotected_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 108, SV3_1aPpParser::RuleEndprotected_directive_one_line);
@@ -5832,14 +5385,6 @@
     parserListener->exitEndprotected_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Endprotected_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprotected_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Endprotected_directiveContext* SV3_1aPpParser::endprotected_directive() {
   Endprotected_directiveContext *_localctx = _tracker.createInstance<Endprotected_directiveContext>(_ctx, getState());
   enterRule(_localctx, 110, SV3_1aPpParser::RuleEndprotected_directive);
@@ -5901,14 +5446,6 @@
     parserListener->exitExpand_vectornets_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Expand_vectornets_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitExpand_vectornets_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Expand_vectornets_directive_one_lineContext* SV3_1aPpParser::expand_vectornets_directive_one_line() {
   Expand_vectornets_directive_one_lineContext *_localctx = _tracker.createInstance<Expand_vectornets_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 112, SV3_1aPpParser::RuleExpand_vectornets_directive_one_line);
@@ -5971,14 +5508,6 @@
     parserListener->exitExpand_vectornets_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Expand_vectornets_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitExpand_vectornets_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Expand_vectornets_directiveContext* SV3_1aPpParser::expand_vectornets_directive() {
   Expand_vectornets_directiveContext *_localctx = _tracker.createInstance<Expand_vectornets_directiveContext>(_ctx, getState());
   enterRule(_localctx, 114, SV3_1aPpParser::RuleExpand_vectornets_directive);
@@ -6040,14 +5569,6 @@
     parserListener->exitNoexpand_vectornets_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noexpand_vectornets_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoexpand_vectornets_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noexpand_vectornets_directive_one_lineContext* SV3_1aPpParser::noexpand_vectornets_directive_one_line() {
   Noexpand_vectornets_directive_one_lineContext *_localctx = _tracker.createInstance<Noexpand_vectornets_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 116, SV3_1aPpParser::RuleNoexpand_vectornets_directive_one_line);
@@ -6110,14 +5631,6 @@
     parserListener->exitNoexpand_vectornets_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noexpand_vectornets_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoexpand_vectornets_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noexpand_vectornets_directiveContext* SV3_1aPpParser::noexpand_vectornets_directive() {
   Noexpand_vectornets_directiveContext *_localctx = _tracker.createInstance<Noexpand_vectornets_directiveContext>(_ctx, getState());
   enterRule(_localctx, 118, SV3_1aPpParser::RuleNoexpand_vectornets_directive);
@@ -6179,14 +5692,6 @@
     parserListener->exitAutoexpand_vectornets_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Autoexpand_vectornets_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitAutoexpand_vectornets_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Autoexpand_vectornets_directive_one_lineContext* SV3_1aPpParser::autoexpand_vectornets_directive_one_line() {
   Autoexpand_vectornets_directive_one_lineContext *_localctx = _tracker.createInstance<Autoexpand_vectornets_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 120, SV3_1aPpParser::RuleAutoexpand_vectornets_directive_one_line);
@@ -6249,14 +5754,6 @@
     parserListener->exitAutoexpand_vectornets_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Autoexpand_vectornets_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitAutoexpand_vectornets_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Autoexpand_vectornets_directiveContext* SV3_1aPpParser::autoexpand_vectornets_directive() {
   Autoexpand_vectornets_directiveContext *_localctx = _tracker.createInstance<Autoexpand_vectornets_directiveContext>(_ctx, getState());
   enterRule(_localctx, 122, SV3_1aPpParser::RuleAutoexpand_vectornets_directive);
@@ -6310,14 +5807,6 @@
     parserListener->exitUselib_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Uselib_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUselib_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Uselib_directive_one_lineContext* SV3_1aPpParser::uselib_directive_one_line() {
   Uselib_directive_one_lineContext *_localctx = _tracker.createInstance<Uselib_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 124, SV3_1aPpParser::RuleUselib_directive_one_line);
@@ -6377,14 +5866,6 @@
     parserListener->exitUselib_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Uselib_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUselib_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Uselib_directiveContext* SV3_1aPpParser::uselib_directive() {
   Uselib_directiveContext *_localctx = _tracker.createInstance<Uselib_directiveContext>(_ctx, getState());
   enterRule(_localctx, 126, SV3_1aPpParser::RuleUselib_directive);
@@ -6465,14 +5946,6 @@
     parserListener->exitDisable_portfaults_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Disable_portfaults_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDisable_portfaults_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Disable_portfaults_directive_one_lineContext* SV3_1aPpParser::disable_portfaults_directive_one_line() {
   Disable_portfaults_directive_one_lineContext *_localctx = _tracker.createInstance<Disable_portfaults_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 128, SV3_1aPpParser::RuleDisable_portfaults_directive_one_line);
@@ -6535,14 +6008,6 @@
     parserListener->exitDisable_portfaults_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Disable_portfaults_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDisable_portfaults_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Disable_portfaults_directiveContext* SV3_1aPpParser::disable_portfaults_directive() {
   Disable_portfaults_directiveContext *_localctx = _tracker.createInstance<Disable_portfaults_directiveContext>(_ctx, getState());
   enterRule(_localctx, 130, SV3_1aPpParser::RuleDisable_portfaults_directive);
@@ -6604,14 +6069,6 @@
     parserListener->exitEnable_portfaults_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Enable_portfaults_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEnable_portfaults_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Enable_portfaults_directive_one_lineContext* SV3_1aPpParser::enable_portfaults_directive_one_line() {
   Enable_portfaults_directive_one_lineContext *_localctx = _tracker.createInstance<Enable_portfaults_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 132, SV3_1aPpParser::RuleEnable_portfaults_directive_one_line);
@@ -6674,14 +6131,6 @@
     parserListener->exitEnable_portfaults_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Enable_portfaults_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEnable_portfaults_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Enable_portfaults_directiveContext* SV3_1aPpParser::enable_portfaults_directive() {
   Enable_portfaults_directiveContext *_localctx = _tracker.createInstance<Enable_portfaults_directiveContext>(_ctx, getState());
   enterRule(_localctx, 134, SV3_1aPpParser::RuleEnable_portfaults_directive);
@@ -6743,14 +6192,6 @@
     parserListener->exitNosuppress_faults_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Nosuppress_faults_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNosuppress_faults_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Nosuppress_faults_directive_one_lineContext* SV3_1aPpParser::nosuppress_faults_directive_one_line() {
   Nosuppress_faults_directive_one_lineContext *_localctx = _tracker.createInstance<Nosuppress_faults_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 136, SV3_1aPpParser::RuleNosuppress_faults_directive_one_line);
@@ -6813,14 +6254,6 @@
     parserListener->exitNosuppress_faults_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Nosuppress_faults_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNosuppress_faults_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Nosuppress_faults_directiveContext* SV3_1aPpParser::nosuppress_faults_directive() {
   Nosuppress_faults_directiveContext *_localctx = _tracker.createInstance<Nosuppress_faults_directiveContext>(_ctx, getState());
   enterRule(_localctx, 138, SV3_1aPpParser::RuleNosuppress_faults_directive);
@@ -6882,14 +6315,6 @@
     parserListener->exitSuppress_faults_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Suppress_faults_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSuppress_faults_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Suppress_faults_directive_one_lineContext* SV3_1aPpParser::suppress_faults_directive_one_line() {
   Suppress_faults_directive_one_lineContext *_localctx = _tracker.createInstance<Suppress_faults_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 140, SV3_1aPpParser::RuleSuppress_faults_directive_one_line);
@@ -6952,14 +6377,6 @@
     parserListener->exitSuppress_faults_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Suppress_faults_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSuppress_faults_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Suppress_faults_directiveContext* SV3_1aPpParser::suppress_faults_directive() {
   Suppress_faults_directiveContext *_localctx = _tracker.createInstance<Suppress_faults_directiveContext>(_ctx, getState());
   enterRule(_localctx, 142, SV3_1aPpParser::RuleSuppress_faults_directive);
@@ -7021,14 +6438,6 @@
     parserListener->exitSigned_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Signed_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSigned_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Signed_directive_one_lineContext* SV3_1aPpParser::signed_directive_one_line() {
   Signed_directive_one_lineContext *_localctx = _tracker.createInstance<Signed_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 144, SV3_1aPpParser::RuleSigned_directive_one_line);
@@ -7091,14 +6500,6 @@
     parserListener->exitSigned_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Signed_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSigned_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Signed_directiveContext* SV3_1aPpParser::signed_directive() {
   Signed_directiveContext *_localctx = _tracker.createInstance<Signed_directiveContext>(_ctx, getState());
   enterRule(_localctx, 146, SV3_1aPpParser::RuleSigned_directive);
@@ -7160,14 +6561,6 @@
     parserListener->exitUnsigned_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Unsigned_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUnsigned_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Unsigned_directive_one_lineContext* SV3_1aPpParser::unsigned_directive_one_line() {
   Unsigned_directive_one_lineContext *_localctx = _tracker.createInstance<Unsigned_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 148, SV3_1aPpParser::RuleUnsigned_directive_one_line);
@@ -7230,14 +6623,6 @@
     parserListener->exitUnsigned_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Unsigned_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUnsigned_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Unsigned_directiveContext* SV3_1aPpParser::unsigned_directive() {
   Unsigned_directiveContext *_localctx = _tracker.createInstance<Unsigned_directiveContext>(_ctx, getState());
   enterRule(_localctx, 150, SV3_1aPpParser::RuleUnsigned_directive);
@@ -7299,14 +6684,6 @@
     parserListener->exitRemove_gatename_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Remove_gatename_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitRemove_gatename_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Remove_gatename_directive_one_lineContext* SV3_1aPpParser::remove_gatename_directive_one_line() {
   Remove_gatename_directive_one_lineContext *_localctx = _tracker.createInstance<Remove_gatename_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 152, SV3_1aPpParser::RuleRemove_gatename_directive_one_line);
@@ -7369,14 +6746,6 @@
     parserListener->exitRemove_gatename_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Remove_gatename_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitRemove_gatename_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Remove_gatename_directiveContext* SV3_1aPpParser::remove_gatename_directive() {
   Remove_gatename_directiveContext *_localctx = _tracker.createInstance<Remove_gatename_directiveContext>(_ctx, getState());
   enterRule(_localctx, 154, SV3_1aPpParser::RuleRemove_gatename_directive);
@@ -7438,14 +6807,6 @@
     parserListener->exitNoremove_gatenames_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noremove_gatenames_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoremove_gatenames_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noremove_gatenames_directive_one_lineContext* SV3_1aPpParser::noremove_gatenames_directive_one_line() {
   Noremove_gatenames_directive_one_lineContext *_localctx = _tracker.createInstance<Noremove_gatenames_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 156, SV3_1aPpParser::RuleNoremove_gatenames_directive_one_line);
@@ -7508,14 +6869,6 @@
     parserListener->exitNoremove_gatenames_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noremove_gatenames_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoremove_gatenames_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noremove_gatenames_directiveContext* SV3_1aPpParser::noremove_gatenames_directive() {
   Noremove_gatenames_directiveContext *_localctx = _tracker.createInstance<Noremove_gatenames_directiveContext>(_ctx, getState());
   enterRule(_localctx, 158, SV3_1aPpParser::RuleNoremove_gatenames_directive);
@@ -7577,14 +6930,6 @@
     parserListener->exitRemove_netname_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Remove_netname_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitRemove_netname_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Remove_netname_directive_one_lineContext* SV3_1aPpParser::remove_netname_directive_one_line() {
   Remove_netname_directive_one_lineContext *_localctx = _tracker.createInstance<Remove_netname_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 160, SV3_1aPpParser::RuleRemove_netname_directive_one_line);
@@ -7647,14 +6992,6 @@
     parserListener->exitRemove_netname_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Remove_netname_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitRemove_netname_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Remove_netname_directiveContext* SV3_1aPpParser::remove_netname_directive() {
   Remove_netname_directiveContext *_localctx = _tracker.createInstance<Remove_netname_directiveContext>(_ctx, getState());
   enterRule(_localctx, 162, SV3_1aPpParser::RuleRemove_netname_directive);
@@ -7716,14 +7053,6 @@
     parserListener->exitNoremove_netnames_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noremove_netnames_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoremove_netnames_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noremove_netnames_directive_one_lineContext* SV3_1aPpParser::noremove_netnames_directive_one_line() {
   Noremove_netnames_directive_one_lineContext *_localctx = _tracker.createInstance<Noremove_netnames_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 164, SV3_1aPpParser::RuleNoremove_netnames_directive_one_line);
@@ -7786,14 +7115,6 @@
     parserListener->exitNoremove_netnames_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noremove_netnames_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoremove_netnames_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noremove_netnames_directiveContext* SV3_1aPpParser::noremove_netnames_directive() {
   Noremove_netnames_directiveContext *_localctx = _tracker.createInstance<Noremove_netnames_directiveContext>(_ctx, getState());
   enterRule(_localctx, 166, SV3_1aPpParser::RuleNoremove_netnames_directive);
@@ -7855,14 +7176,6 @@
     parserListener->exitAccelerate_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Accelerate_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitAccelerate_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Accelerate_directive_one_lineContext* SV3_1aPpParser::accelerate_directive_one_line() {
   Accelerate_directive_one_lineContext *_localctx = _tracker.createInstance<Accelerate_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 168, SV3_1aPpParser::RuleAccelerate_directive_one_line);
@@ -7925,14 +7238,6 @@
     parserListener->exitAccelerate_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Accelerate_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitAccelerate_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Accelerate_directiveContext* SV3_1aPpParser::accelerate_directive() {
   Accelerate_directiveContext *_localctx = _tracker.createInstance<Accelerate_directiveContext>(_ctx, getState());
   enterRule(_localctx, 170, SV3_1aPpParser::RuleAccelerate_directive);
@@ -7994,14 +7299,6 @@
     parserListener->exitNoaccelerate_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noaccelerate_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoaccelerate_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noaccelerate_directive_one_lineContext* SV3_1aPpParser::noaccelerate_directive_one_line() {
   Noaccelerate_directive_one_lineContext *_localctx = _tracker.createInstance<Noaccelerate_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 172, SV3_1aPpParser::RuleNoaccelerate_directive_one_line);
@@ -8064,14 +7361,6 @@
     parserListener->exitNoaccelerate_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Noaccelerate_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNoaccelerate_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Noaccelerate_directiveContext* SV3_1aPpParser::noaccelerate_directive() {
   Noaccelerate_directiveContext *_localctx = _tracker.createInstance<Noaccelerate_directiveContext>(_ctx, getState());
   enterRule(_localctx, 174, SV3_1aPpParser::RuleNoaccelerate_directive);
@@ -8133,14 +7422,6 @@
     parserListener->exitDefault_trireg_strenght_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_trireg_strenght_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_trireg_strenght_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_trireg_strenght_directive_one_lineContext* SV3_1aPpParser::default_trireg_strenght_directive_one_line() {
   Default_trireg_strenght_directive_one_lineContext *_localctx = _tracker.createInstance<Default_trireg_strenght_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 176, SV3_1aPpParser::RuleDefault_trireg_strenght_directive_one_line);
@@ -8211,14 +7492,6 @@
     parserListener->exitDefault_trireg_strenght_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_trireg_strenght_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_trireg_strenght_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_trireg_strenght_directiveContext* SV3_1aPpParser::default_trireg_strenght_directive() {
   Default_trireg_strenght_directiveContext *_localctx = _tracker.createInstance<Default_trireg_strenght_directiveContext>(_ctx, getState());
   enterRule(_localctx, 178, SV3_1aPpParser::RuleDefault_trireg_strenght_directive);
@@ -8284,14 +7557,6 @@
     parserListener->exitDefault_decay_time_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_decay_time_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_decay_time_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_decay_time_directive_one_lineContext* SV3_1aPpParser::default_decay_time_directive_one_line() {
   Default_decay_time_directive_one_lineContext *_localctx = _tracker.createInstance<Default_decay_time_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 180, SV3_1aPpParser::RuleDefault_decay_time_directive_one_line);
@@ -8370,14 +7635,6 @@
     parserListener->exitDefault_decay_time_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_decay_time_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_decay_time_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_decay_time_directiveContext* SV3_1aPpParser::default_decay_time_directive() {
   Default_decay_time_directiveContext *_localctx = _tracker.createInstance<Default_decay_time_directiveContext>(_ctx, getState());
   enterRule(_localctx, 182, SV3_1aPpParser::RuleDefault_decay_time_directive);
@@ -8465,14 +7722,6 @@
     parserListener->exitUnconnected_drive_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Unconnected_drive_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUnconnected_drive_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Unconnected_drive_directive_one_lineContext* SV3_1aPpParser::unconnected_drive_directive_one_line() {
   Unconnected_drive_directive_one_lineContext *_localctx = _tracker.createInstance<Unconnected_drive_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 184, SV3_1aPpParser::RuleUnconnected_drive_directive_one_line);
@@ -8543,14 +7792,6 @@
     parserListener->exitUnconnected_drive_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Unconnected_drive_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUnconnected_drive_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Unconnected_drive_directiveContext* SV3_1aPpParser::unconnected_drive_directive() {
   Unconnected_drive_directiveContext *_localctx = _tracker.createInstance<Unconnected_drive_directiveContext>(_ctx, getState());
   enterRule(_localctx, 186, SV3_1aPpParser::RuleUnconnected_drive_directive);
@@ -8616,14 +7857,6 @@
     parserListener->exitNounconnected_drive_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Nounconnected_drive_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNounconnected_drive_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Nounconnected_drive_directive_one_lineContext* SV3_1aPpParser::nounconnected_drive_directive_one_line() {
   Nounconnected_drive_directive_one_lineContext *_localctx = _tracker.createInstance<Nounconnected_drive_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 188, SV3_1aPpParser::RuleNounconnected_drive_directive_one_line);
@@ -8686,14 +7919,6 @@
     parserListener->exitNounconnected_drive_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Nounconnected_drive_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitNounconnected_drive_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Nounconnected_drive_directiveContext* SV3_1aPpParser::nounconnected_drive_directive() {
   Nounconnected_drive_directiveContext *_localctx = _tracker.createInstance<Nounconnected_drive_directiveContext>(_ctx, getState());
   enterRule(_localctx, 190, SV3_1aPpParser::RuleNounconnected_drive_directive);
@@ -8755,14 +7980,6 @@
     parserListener->exitDelay_mode_distributed_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_distributed_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_distributed_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_distributed_directive_one_lineContext* SV3_1aPpParser::delay_mode_distributed_directive_one_line() {
   Delay_mode_distributed_directive_one_lineContext *_localctx = _tracker.createInstance<Delay_mode_distributed_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 192, SV3_1aPpParser::RuleDelay_mode_distributed_directive_one_line);
@@ -8825,14 +8042,6 @@
     parserListener->exitDelay_mode_distributed_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_distributed_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_distributed_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_distributed_directiveContext* SV3_1aPpParser::delay_mode_distributed_directive() {
   Delay_mode_distributed_directiveContext *_localctx = _tracker.createInstance<Delay_mode_distributed_directiveContext>(_ctx, getState());
   enterRule(_localctx, 194, SV3_1aPpParser::RuleDelay_mode_distributed_directive);
@@ -8894,14 +8103,6 @@
     parserListener->exitDelay_mode_path_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_path_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_path_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_path_directive_one_lineContext* SV3_1aPpParser::delay_mode_path_directive_one_line() {
   Delay_mode_path_directive_one_lineContext *_localctx = _tracker.createInstance<Delay_mode_path_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 196, SV3_1aPpParser::RuleDelay_mode_path_directive_one_line);
@@ -8964,14 +8165,6 @@
     parserListener->exitDelay_mode_path_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_path_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_path_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_path_directiveContext* SV3_1aPpParser::delay_mode_path_directive() {
   Delay_mode_path_directiveContext *_localctx = _tracker.createInstance<Delay_mode_path_directiveContext>(_ctx, getState());
   enterRule(_localctx, 198, SV3_1aPpParser::RuleDelay_mode_path_directive);
@@ -9033,14 +8226,6 @@
     parserListener->exitDelay_mode_unit_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_unit_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_unit_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_unit_directive_one_lineContext* SV3_1aPpParser::delay_mode_unit_directive_one_line() {
   Delay_mode_unit_directive_one_lineContext *_localctx = _tracker.createInstance<Delay_mode_unit_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 200, SV3_1aPpParser::RuleDelay_mode_unit_directive_one_line);
@@ -9103,14 +8288,6 @@
     parserListener->exitDelay_mode_unit_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_unit_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_unit_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_unit_directiveContext* SV3_1aPpParser::delay_mode_unit_directive() {
   Delay_mode_unit_directiveContext *_localctx = _tracker.createInstance<Delay_mode_unit_directiveContext>(_ctx, getState());
   enterRule(_localctx, 202, SV3_1aPpParser::RuleDelay_mode_unit_directive);
@@ -9172,14 +8349,6 @@
     parserListener->exitDelay_mode_zero_directive_one_line(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_zero_directive_one_lineContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_zero_directive_one_line(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_zero_directive_one_lineContext* SV3_1aPpParser::delay_mode_zero_directive_one_line() {
   Delay_mode_zero_directive_one_lineContext *_localctx = _tracker.createInstance<Delay_mode_zero_directive_one_lineContext>(_ctx, getState());
   enterRule(_localctx, 204, SV3_1aPpParser::RuleDelay_mode_zero_directive_one_line);
@@ -9242,14 +8411,6 @@
     parserListener->exitDelay_mode_zero_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Delay_mode_zero_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDelay_mode_zero_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Delay_mode_zero_directiveContext* SV3_1aPpParser::delay_mode_zero_directive() {
   Delay_mode_zero_directiveContext *_localctx = _tracker.createInstance<Delay_mode_zero_directiveContext>(_ctx, getState());
   enterRule(_localctx, 206, SV3_1aPpParser::RuleDelay_mode_zero_directive);
@@ -9299,14 +8460,6 @@
     parserListener->exitUndefineall_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Undefineall_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitUndefineall_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Undefineall_directiveContext* SV3_1aPpParser::undefineall_directive() {
   Undefineall_directiveContext *_localctx = _tracker.createInstance<Undefineall_directiveContext>(_ctx, getState());
   enterRule(_localctx, 208, SV3_1aPpParser::RuleUndefineall_directive);
@@ -9356,14 +8509,6 @@
     parserListener->exitModule(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::ModuleContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitModule(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::ModuleContext* SV3_1aPpParser::module() {
   ModuleContext *_localctx = _tracker.createInstance<ModuleContext>(_ctx, getState());
   enterRule(_localctx, 210, SV3_1aPpParser::RuleModule);
@@ -9413,14 +8558,6 @@
     parserListener->exitEndmodule(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndmoduleContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndmodule(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndmoduleContext* SV3_1aPpParser::endmodule() {
   EndmoduleContext *_localctx = _tracker.createInstance<EndmoduleContext>(_ctx, getState());
   enterRule(_localctx, 212, SV3_1aPpParser::RuleEndmodule);
@@ -9470,14 +8607,6 @@
     parserListener->exitSv_interface(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Sv_interfaceContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSv_interface(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Sv_interfaceContext* SV3_1aPpParser::sv_interface() {
   Sv_interfaceContext *_localctx = _tracker.createInstance<Sv_interfaceContext>(_ctx, getState());
   enterRule(_localctx, 214, SV3_1aPpParser::RuleSv_interface);
@@ -9527,14 +8656,6 @@
     parserListener->exitEndinterface(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndinterfaceContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndinterface(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndinterfaceContext* SV3_1aPpParser::endinterface() {
   EndinterfaceContext *_localctx = _tracker.createInstance<EndinterfaceContext>(_ctx, getState());
   enterRule(_localctx, 216, SV3_1aPpParser::RuleEndinterface);
@@ -9584,14 +8705,6 @@
     parserListener->exitProgram(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::ProgramContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitProgram(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::ProgramContext* SV3_1aPpParser::program() {
   ProgramContext *_localctx = _tracker.createInstance<ProgramContext>(_ctx, getState());
   enterRule(_localctx, 218, SV3_1aPpParser::RuleProgram);
@@ -9641,14 +8754,6 @@
     parserListener->exitEndprogram(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndprogramContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprogram(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndprogramContext* SV3_1aPpParser::endprogram() {
   EndprogramContext *_localctx = _tracker.createInstance<EndprogramContext>(_ctx, getState());
   enterRule(_localctx, 220, SV3_1aPpParser::RuleEndprogram);
@@ -9698,14 +8803,6 @@
     parserListener->exitPrimitive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::PrimitiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPrimitive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::PrimitiveContext* SV3_1aPpParser::primitive() {
   PrimitiveContext *_localctx = _tracker.createInstance<PrimitiveContext>(_ctx, getState());
   enterRule(_localctx, 222, SV3_1aPpParser::RulePrimitive);
@@ -9755,14 +8852,6 @@
     parserListener->exitEndprimitive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndprimitiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndprimitive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndprimitiveContext* SV3_1aPpParser::endprimitive() {
   EndprimitiveContext *_localctx = _tracker.createInstance<EndprimitiveContext>(_ctx, getState());
   enterRule(_localctx, 224, SV3_1aPpParser::RuleEndprimitive);
@@ -9812,14 +8901,6 @@
     parserListener->exitSv_package(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Sv_packageContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSv_package(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Sv_packageContext* SV3_1aPpParser::sv_package() {
   Sv_packageContext *_localctx = _tracker.createInstance<Sv_packageContext>(_ctx, getState());
   enterRule(_localctx, 226, SV3_1aPpParser::RuleSv_package);
@@ -9869,14 +8950,6 @@
     parserListener->exitEndpackage(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndpackageContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndpackage(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndpackageContext* SV3_1aPpParser::endpackage() {
   EndpackageContext *_localctx = _tracker.createInstance<EndpackageContext>(_ctx, getState());
   enterRule(_localctx, 228, SV3_1aPpParser::RuleEndpackage);
@@ -9926,14 +8999,6 @@
     parserListener->exitChecker(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::CheckerContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitChecker(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::CheckerContext* SV3_1aPpParser::checker() {
   CheckerContext *_localctx = _tracker.createInstance<CheckerContext>(_ctx, getState());
   enterRule(_localctx, 230, SV3_1aPpParser::RuleChecker);
@@ -9983,14 +9048,6 @@
     parserListener->exitEndchecker(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndcheckerContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndchecker(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndcheckerContext* SV3_1aPpParser::endchecker() {
   EndcheckerContext *_localctx = _tracker.createInstance<EndcheckerContext>(_ctx, getState());
   enterRule(_localctx, 232, SV3_1aPpParser::RuleEndchecker);
@@ -10040,14 +9097,6 @@
     parserListener->exitConfig(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::ConfigContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitConfig(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::ConfigContext* SV3_1aPpParser::config() {
   ConfigContext *_localctx = _tracker.createInstance<ConfigContext>(_ctx, getState());
   enterRule(_localctx, 234, SV3_1aPpParser::RuleConfig);
@@ -10097,14 +9146,6 @@
     parserListener->exitEndconfig(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::EndconfigContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEndconfig(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::EndconfigContext* SV3_1aPpParser::endconfig() {
   EndconfigContext *_localctx = _tracker.createInstance<EndconfigContext>(_ctx, getState());
   enterRule(_localctx, 236, SV3_1aPpParser::RuleEndconfig);
@@ -10174,14 +9215,6 @@
     parserListener->exitDefine_directive(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Define_directiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefine_directive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Define_directiveContext* SV3_1aPpParser::define_directive() {
   Define_directiveContext *_localctx = _tracker.createInstance<Define_directiveContext>(_ctx, getState());
   enterRule(_localctx, 238, SV3_1aPpParser::RuleDefine_directive);
@@ -10277,14 +9310,6 @@
     parserListener->exitMultiline_no_args_macro_definition(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Multiline_no_args_macro_definitionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMultiline_no_args_macro_definition(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Multiline_no_args_macro_definitionContext* SV3_1aPpParser::multiline_no_args_macro_definition() {
   Multiline_no_args_macro_definitionContext *_localctx = _tracker.createInstance<Multiline_no_args_macro_definitionContext>(_ctx, getState());
   enterRule(_localctx, 240, SV3_1aPpParser::RuleMultiline_no_args_macro_definition);
@@ -10387,14 +9412,6 @@
     parserListener->exitMultiline_args_macro_definition(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Multiline_args_macro_definitionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMultiline_args_macro_definition(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Multiline_args_macro_definitionContext* SV3_1aPpParser::multiline_args_macro_definition() {
   Multiline_args_macro_definitionContext *_localctx = _tracker.createInstance<Multiline_args_macro_definitionContext>(_ctx, getState());
   enterRule(_localctx, 242, SV3_1aPpParser::RuleMultiline_args_macro_definition);
@@ -10503,14 +9520,6 @@
     parserListener->exitSimple_no_args_macro_definition(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_no_args_macro_definitionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_no_args_macro_definition(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_no_args_macro_definitionContext* SV3_1aPpParser::simple_no_args_macro_definition() {
   Simple_no_args_macro_definitionContext *_localctx = _tracker.createInstance<Simple_no_args_macro_definitionContext>(_ctx, getState());
   enterRule(_localctx, 244, SV3_1aPpParser::RuleSimple_no_args_macro_definition);
@@ -10659,14 +9668,6 @@
     parserListener->exitSimple_args_macro_definition(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_args_macro_definitionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_args_macro_definition(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_args_macro_definitionContext* SV3_1aPpParser::simple_args_macro_definition() {
   Simple_args_macro_definitionContext *_localctx = _tracker.createInstance<Simple_args_macro_definitionContext>(_ctx, getState());
   enterRule(_localctx, 246, SV3_1aPpParser::RuleSimple_args_macro_definition);
@@ -10799,14 +9800,6 @@
     parserListener->exitIdentifier_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Identifier_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitIdentifier_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Identifier_in_macro_bodyContext* SV3_1aPpParser::identifier_in_macro_body() {
   Identifier_in_macro_bodyContext *_localctx = _tracker.createInstance<Identifier_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 248, SV3_1aPpParser::RuleIdentifier_in_macro_body);
@@ -10902,14 +9895,6 @@
     parserListener->exitSimple_no_args_macro_definition_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_no_args_macro_definition_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_no_args_macro_definition_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_no_args_macro_definition_in_macro_bodyContext* SV3_1aPpParser::simple_no_args_macro_definition_in_macro_body() {
   Simple_no_args_macro_definition_in_macro_bodyContext *_localctx = _tracker.createInstance<Simple_no_args_macro_definition_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 250, SV3_1aPpParser::RuleSimple_no_args_macro_definition_in_macro_body);
@@ -11086,14 +10071,6 @@
     parserListener->exitSimple_args_macro_definition_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_args_macro_definition_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_args_macro_definition_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_args_macro_definition_in_macro_bodyContext* SV3_1aPpParser::simple_args_macro_definition_in_macro_body() {
   Simple_args_macro_definition_in_macro_bodyContext *_localctx = _tracker.createInstance<Simple_args_macro_definition_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 252, SV3_1aPpParser::RuleSimple_args_macro_definition_in_macro_body);
@@ -11452,14 +10429,6 @@
     parserListener->exitDirective_in_macro(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Directive_in_macroContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDirective_in_macro(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Directive_in_macroContext* SV3_1aPpParser::directive_in_macro() {
   Directive_in_macroContext *_localctx = _tracker.createInstance<Directive_in_macroContext>(_ctx, getState());
   enterRule(_localctx, 254, SV3_1aPpParser::RuleDirective_in_macro);
@@ -11988,14 +10957,6 @@
     parserListener->exitMacro_arguments(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Macro_argumentsContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacro_arguments(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Macro_argumentsContext* SV3_1aPpParser::macro_arguments() {
   Macro_argumentsContext *_localctx = _tracker.createInstance<Macro_argumentsContext>(_ctx, getState());
   enterRule(_localctx, 256, SV3_1aPpParser::RuleMacro_arguments);
@@ -12150,14 +11111,6 @@
     parserListener->exitEscaped_macro_definition_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Escaped_macro_definition_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEscaped_macro_definition_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Escaped_macro_definition_bodyContext* SV3_1aPpParser::escaped_macro_definition_body() {
   Escaped_macro_definition_bodyContext *_localctx = _tracker.createInstance<Escaped_macro_definition_bodyContext>(_ctx, getState());
   enterRule(_localctx, 258, SV3_1aPpParser::RuleEscaped_macro_definition_body);
@@ -12450,14 +11403,6 @@
     parserListener->exitEscaped_macro_definition_body_alt1(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Escaped_macro_definition_body_alt1Context::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEscaped_macro_definition_body_alt1(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Escaped_macro_definition_body_alt1Context* SV3_1aPpParser::escaped_macro_definition_body_alt1() {
   Escaped_macro_definition_body_alt1Context *_localctx = _tracker.createInstance<Escaped_macro_definition_body_alt1Context>(_ctx, getState());
   enterRule(_localctx, 260, SV3_1aPpParser::RuleEscaped_macro_definition_body_alt1);
@@ -12938,14 +11883,6 @@
     parserListener->exitEscaped_macro_definition_body_alt2(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Escaped_macro_definition_body_alt2Context::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEscaped_macro_definition_body_alt2(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Escaped_macro_definition_body_alt2Context* SV3_1aPpParser::escaped_macro_definition_body_alt2() {
   Escaped_macro_definition_body_alt2Context *_localctx = _tracker.createInstance<Escaped_macro_definition_body_alt2Context>(_ctx, getState());
   enterRule(_localctx, 262, SV3_1aPpParser::RuleEscaped_macro_definition_body_alt2);
@@ -13426,14 +12363,6 @@
     parserListener->exitSimple_macro_definition_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_macro_definition_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_macro_definition_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_macro_definition_bodyContext* SV3_1aPpParser::simple_macro_definition_body() {
   Simple_macro_definition_bodyContext *_localctx = _tracker.createInstance<Simple_macro_definition_bodyContext>(_ctx, getState());
   enterRule(_localctx, 264, SV3_1aPpParser::RuleSimple_macro_definition_body);
@@ -13868,14 +12797,6 @@
     parserListener->exitSimple_macro_definition_body_in_macro_body(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Simple_macro_definition_body_in_macro_bodyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitSimple_macro_definition_body_in_macro_body(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Simple_macro_definition_body_in_macro_bodyContext* SV3_1aPpParser::simple_macro_definition_body_in_macro_body() {
   Simple_macro_definition_body_in_macro_bodyContext *_localctx = _tracker.createInstance<Simple_macro_definition_body_in_macro_bodyContext>(_ctx, getState());
   enterRule(_localctx, 266, SV3_1aPpParser::RuleSimple_macro_definition_body_in_macro_body);
@@ -14162,14 +13083,6 @@
     parserListener->exitPragma_expression(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Pragma_expressionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPragma_expression(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Pragma_expressionContext* SV3_1aPpParser::pragma_expression() {
   Pragma_expressionContext *_localctx = _tracker.createInstance<Pragma_expressionContext>(_ctx, getState());
   enterRule(_localctx, 268, SV3_1aPpParser::RulePragma_expression);
@@ -14412,14 +13325,6 @@
     parserListener->exitMacro_arg(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Macro_argContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitMacro_arg(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Macro_argContext* SV3_1aPpParser::macro_arg() {
   Macro_argContext *_localctx = _tracker.createInstance<Macro_argContext>(_ctx, getState());
   enterRule(_localctx, 270, SV3_1aPpParser::RuleMacro_arg);
@@ -14737,14 +13642,6 @@
     parserListener->exitPaired_parens(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Paired_parensContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitPaired_parens(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Paired_parensContext* SV3_1aPpParser::paired_parens() {
   Paired_parensContext *_localctx = _tracker.createInstance<Paired_parensContext>(_ctx, getState());
   enterRule(_localctx, 272, SV3_1aPpParser::RulePaired_parens);
@@ -15309,14 +14206,6 @@
     parserListener->exitText_blob(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Text_blobContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitText_blob(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Text_blobContext* SV3_1aPpParser::text_blob() {
   Text_blobContext *_localctx = _tracker.createInstance<Text_blobContext>(_ctx, getState());
   enterRule(_localctx, 274, SV3_1aPpParser::RuleText_blob);
@@ -15544,14 +14433,6 @@
     parserListener->exitString(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::StringContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitString(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::StringContext* SV3_1aPpParser::string() {
   StringContext *_localctx = _tracker.createInstance<StringContext>(_ctx, getState());
   enterRule(_localctx, 276, SV3_1aPpParser::RuleString);
@@ -15601,14 +14482,6 @@
     parserListener->exitEscaped_identifier(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Escaped_identifierContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitEscaped_identifier(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Escaped_identifierContext* SV3_1aPpParser::escaped_identifier() {
   Escaped_identifierContext *_localctx = _tracker.createInstance<Escaped_identifierContext>(_ctx, getState());
   enterRule(_localctx, 278, SV3_1aPpParser::RuleEscaped_identifier);
@@ -15706,14 +14579,6 @@
     parserListener->exitDefault_value(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::Default_valueContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitDefault_value(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::Default_valueContext* SV3_1aPpParser::default_value() {
   Default_valueContext *_localctx = _tracker.createInstance<Default_valueContext>(_ctx, getState());
   enterRule(_localctx, 280, SV3_1aPpParser::RuleDefault_value);
@@ -15934,14 +14799,6 @@
     parserListener->exitString_blob(this);
 }
 
-
-antlrcpp::Any SV3_1aPpParser::String_blobContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aPpParserVisitor*>(visitor))
-    return parserVisitor->visitString_blob(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aPpParser::String_blobContext* SV3_1aPpParser::string_blob() {
   String_blobContext *_localctx = _tracker.createInstance<String_blobContext>(_ctx, getState());
   enterRule(_localctx, 282, SV3_1aPpParser::RuleString_blob);
diff --git a/src/parser/SV3_1aPpParser.h b/src/parser/SV3_1aPpParser.h
index 0547e44..4e7fd4d 100644
--- a/src/parser/SV3_1aPpParser.h
+++ b/src/parser/SV3_1aPpParser.h
@@ -262,8 +262,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -349,8 +347,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -382,8 +378,6 @@
     antlr4::tree::TerminalNode* Spaces(size_t i);
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
   };
 
   class  MacroInstanceNoArgsContext : public Macro_instanceContext {
@@ -394,8 +388,6 @@
     antlr4::tree::TerminalNode *Macro_Escaped_identifier();
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
   };
 
   Macro_instanceContext* macro_instance();
@@ -411,8 +403,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -429,8 +419,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -445,8 +433,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -460,8 +446,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -475,8 +459,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -494,8 +476,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -512,8 +492,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -532,8 +510,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -550,8 +526,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -570,8 +544,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -588,8 +560,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -605,8 +575,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -620,8 +588,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -635,8 +601,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -653,8 +617,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -669,8 +631,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -688,8 +648,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -716,8 +674,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -735,8 +691,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -754,8 +708,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -782,8 +734,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -801,8 +751,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -820,8 +768,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -839,8 +785,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -858,8 +802,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -877,8 +819,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -896,8 +836,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -915,8 +853,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -934,8 +870,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -953,8 +887,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -968,8 +900,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -988,8 +918,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1006,8 +934,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1024,8 +950,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1039,8 +963,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1057,8 +979,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1074,8 +994,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1092,8 +1010,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1107,8 +1023,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1125,8 +1039,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1146,8 +1058,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1164,8 +1074,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1179,8 +1087,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1197,8 +1103,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1212,8 +1116,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1230,8 +1132,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1245,8 +1145,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1263,8 +1161,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1278,8 +1174,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1296,8 +1190,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1311,8 +1203,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1329,8 +1219,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1344,8 +1232,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1362,8 +1248,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1377,8 +1261,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1395,8 +1277,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1410,8 +1290,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1428,8 +1306,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1443,8 +1319,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1459,8 +1333,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1476,8 +1348,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1494,8 +1364,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1509,8 +1377,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1527,8 +1393,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1542,8 +1406,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1560,8 +1422,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1575,8 +1435,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1593,8 +1451,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1608,8 +1464,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1626,8 +1480,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1641,8 +1493,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1659,8 +1509,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1674,8 +1522,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1692,8 +1538,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1707,8 +1551,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1725,8 +1567,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1740,8 +1580,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1758,8 +1596,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1773,8 +1609,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1791,8 +1625,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1806,8 +1638,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1824,8 +1654,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1839,8 +1667,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1857,8 +1683,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1872,8 +1696,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1890,8 +1712,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1907,8 +1727,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1925,8 +1743,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1944,8 +1760,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1962,8 +1776,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1979,8 +1791,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -1997,8 +1807,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2012,8 +1820,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2030,8 +1836,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2045,8 +1849,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2063,8 +1865,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2078,8 +1878,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2096,8 +1894,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2111,8 +1907,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2129,8 +1923,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2144,8 +1936,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2159,8 +1949,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2174,8 +1962,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2189,8 +1975,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2204,8 +1988,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2219,8 +2001,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2234,8 +2014,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2249,8 +2027,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2264,8 +2040,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2279,8 +2053,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2294,8 +2066,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2309,8 +2079,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2324,8 +2092,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2339,8 +2105,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2354,8 +2118,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2369,8 +2131,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2389,8 +2149,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2409,8 +2167,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2430,8 +2186,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2452,8 +2206,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2475,8 +2227,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2493,8 +2243,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2514,8 +2262,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2535,8 +2281,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2611,8 +2355,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2637,8 +2379,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2653,8 +2393,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2725,8 +2463,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2797,8 +2533,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2867,8 +2601,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2933,8 +2665,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2965,8 +2695,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -2996,8 +2724,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3048,8 +2774,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3087,8 +2811,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3102,8 +2824,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3117,8 +2837,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3144,8 +2862,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -3178,8 +2894,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
diff --git a/src/parser/SV3_1aPpParserBaseVisitor.cpp b/src/parser/SV3_1aPpParserBaseVisitor.cpp
deleted file mode 100644
index 945f779..0000000
--- a/src/parser/SV3_1aPpParserBaseVisitor.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aPpParser.g4 by ANTLR 4.7.2
-
-
-#include "SV3_1aPpParserBaseVisitor.h"
-
-
diff --git a/src/parser/SV3_1aPpParserBaseVisitor.h b/src/parser/SV3_1aPpParserBaseVisitor.h
deleted file mode 100644
index 690777d..0000000
--- a/src/parser/SV3_1aPpParserBaseVisitor.h
+++ /dev/null
@@ -1,592 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aPpParser.g4 by ANTLR 4.7.2
-
-#pragma once
-
-
-#include "antlr4-runtime.h"
-#include "SV3_1aPpParserVisitor.h"
-
-
-/**
- * This class provides an empty implementation of SV3_1aPpParserVisitor, which can be
- * extended to create a visitor which only needs to handle a subset of the available methods.
- */
-class  SV3_1aPpParserBaseVisitor : public SV3_1aPpParserVisitor {
-public:
-
-  virtual antlrcpp::Any visitSource_text(SV3_1aPpParser::Source_textContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDescription(SV3_1aPpParser::DescriptionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacroInstanceWithArgs(SV3_1aPpParser::MacroInstanceWithArgsContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacroInstanceNoArgs(SV3_1aPpParser::MacroInstanceNoArgsContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUnterminated_string(SV3_1aPpParser::Unterminated_stringContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacro_actual_args(SV3_1aPpParser::Macro_actual_argsContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitComments(SV3_1aPpParser::CommentsContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNumber(SV3_1aPpParser::NumberContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPound_delay(SV3_1aPpParser::Pound_delayContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacro_definition(SV3_1aPpParser::Macro_definitionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitInclude_directive_one_line(SV3_1aPpParser::Include_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitInclude_directive(SV3_1aPpParser::Include_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitLine_directive_one_line(SV3_1aPpParser::Line_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitLine_directive(SV3_1aPpParser::Line_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_nettype_directive_one_line(SV3_1aPpParser::Default_nettype_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_nettype_directive(SV3_1aPpParser::Default_nettype_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_file_directive(SV3_1aPpParser::Sv_file_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_line_directive(SV3_1aPpParser::Sv_line_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitTimescale_directive_one_line(SV3_1aPpParser::Timescale_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitTimescale_directive(SV3_1aPpParser::Timescale_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUndef_directive(SV3_1aPpParser::Undef_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfdef_directive_one_line(SV3_1aPpParser::Ifdef_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfdef_directive(SV3_1aPpParser::Ifdef_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfdef_directive_in_macro_body(SV3_1aPpParser::Ifdef_directive_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfndef_directive_one_line(SV3_1aPpParser::Ifndef_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfndef_directive(SV3_1aPpParser::Ifndef_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIfndef_directive_in_macro_body(SV3_1aPpParser::Ifndef_directive_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElsif_directive_one_line(SV3_1aPpParser::Elsif_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElsif_directive(SV3_1aPpParser::Elsif_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElsif_directive_in_macro_body(SV3_1aPpParser::Elsif_directive_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElseif_directive_one_line(SV3_1aPpParser::Elseif_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElseif_directive(SV3_1aPpParser::Elseif_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElseif_directive_in_macro_body(SV3_1aPpParser::Elseif_directive_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElse_directive_one_line(SV3_1aPpParser::Else_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitElse_directive(SV3_1aPpParser::Else_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndif_directive_one_line(SV3_1aPpParser::Endif_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndif_directive(SV3_1aPpParser::Endif_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitResetall_directive_one_line(SV3_1aPpParser::Resetall_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitResetall_directive(SV3_1aPpParser::Resetall_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitBegin_keywords_directive_one_line(SV3_1aPpParser::Begin_keywords_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitBegin_keywords_directive(SV3_1aPpParser::Begin_keywords_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEnd_keywords_directive_one_line(SV3_1aPpParser::End_keywords_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEnd_keywords_directive(SV3_1aPpParser::End_keywords_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPragma_directive_one_line(SV3_1aPpParser::Pragma_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPragma_directive(SV3_1aPpParser::Pragma_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitCelldefine_directive_one_line(SV3_1aPpParser::Celldefine_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitCelldefine_directive(SV3_1aPpParser::Celldefine_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndcelldefine_directive_one_line(SV3_1aPpParser::Endcelldefine_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndcelldefine_directive(SV3_1aPpParser::Endcelldefine_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProtect_directive_one_line(SV3_1aPpParser::Protect_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProtect_directive(SV3_1aPpParser::Protect_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprotect_directive_one_line(SV3_1aPpParser::Endprotect_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprotect_directive(SV3_1aPpParser::Endprotect_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProtected_directive_one_line(SV3_1aPpParser::Protected_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProtected_directive(SV3_1aPpParser::Protected_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprotected_directive_one_line(SV3_1aPpParser::Endprotected_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprotected_directive(SV3_1aPpParser::Endprotected_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitExpand_vectornets_directive_one_line(SV3_1aPpParser::Expand_vectornets_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitExpand_vectornets_directive(SV3_1aPpParser::Expand_vectornets_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoexpand_vectornets_directive_one_line(SV3_1aPpParser::Noexpand_vectornets_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoexpand_vectornets_directive(SV3_1aPpParser::Noexpand_vectornets_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitAutoexpand_vectornets_directive_one_line(SV3_1aPpParser::Autoexpand_vectornets_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitAutoexpand_vectornets_directive(SV3_1aPpParser::Autoexpand_vectornets_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUselib_directive_one_line(SV3_1aPpParser::Uselib_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUselib_directive(SV3_1aPpParser::Uselib_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDisable_portfaults_directive_one_line(SV3_1aPpParser::Disable_portfaults_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDisable_portfaults_directive(SV3_1aPpParser::Disable_portfaults_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEnable_portfaults_directive_one_line(SV3_1aPpParser::Enable_portfaults_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEnable_portfaults_directive(SV3_1aPpParser::Enable_portfaults_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNosuppress_faults_directive_one_line(SV3_1aPpParser::Nosuppress_faults_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNosuppress_faults_directive(SV3_1aPpParser::Nosuppress_faults_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSuppress_faults_directive_one_line(SV3_1aPpParser::Suppress_faults_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSuppress_faults_directive(SV3_1aPpParser::Suppress_faults_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSigned_directive_one_line(SV3_1aPpParser::Signed_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSigned_directive(SV3_1aPpParser::Signed_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUnsigned_directive_one_line(SV3_1aPpParser::Unsigned_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUnsigned_directive(SV3_1aPpParser::Unsigned_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitRemove_gatename_directive_one_line(SV3_1aPpParser::Remove_gatename_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitRemove_gatename_directive(SV3_1aPpParser::Remove_gatename_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoremove_gatenames_directive_one_line(SV3_1aPpParser::Noremove_gatenames_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoremove_gatenames_directive(SV3_1aPpParser::Noremove_gatenames_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitRemove_netname_directive_one_line(SV3_1aPpParser::Remove_netname_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitRemove_netname_directive(SV3_1aPpParser::Remove_netname_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoremove_netnames_directive_one_line(SV3_1aPpParser::Noremove_netnames_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoremove_netnames_directive(SV3_1aPpParser::Noremove_netnames_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitAccelerate_directive_one_line(SV3_1aPpParser::Accelerate_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitAccelerate_directive(SV3_1aPpParser::Accelerate_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoaccelerate_directive_one_line(SV3_1aPpParser::Noaccelerate_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNoaccelerate_directive(SV3_1aPpParser::Noaccelerate_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_trireg_strenght_directive_one_line(SV3_1aPpParser::Default_trireg_strenght_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_trireg_strenght_directive(SV3_1aPpParser::Default_trireg_strenght_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_decay_time_directive_one_line(SV3_1aPpParser::Default_decay_time_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_decay_time_directive(SV3_1aPpParser::Default_decay_time_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUnconnected_drive_directive_one_line(SV3_1aPpParser::Unconnected_drive_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUnconnected_drive_directive(SV3_1aPpParser::Unconnected_drive_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNounconnected_drive_directive_one_line(SV3_1aPpParser::Nounconnected_drive_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitNounconnected_drive_directive(SV3_1aPpParser::Nounconnected_drive_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_distributed_directive_one_line(SV3_1aPpParser::Delay_mode_distributed_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_distributed_directive(SV3_1aPpParser::Delay_mode_distributed_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_path_directive_one_line(SV3_1aPpParser::Delay_mode_path_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_path_directive(SV3_1aPpParser::Delay_mode_path_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_unit_directive_one_line(SV3_1aPpParser::Delay_mode_unit_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_unit_directive(SV3_1aPpParser::Delay_mode_unit_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_zero_directive_one_line(SV3_1aPpParser::Delay_mode_zero_directive_one_lineContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDelay_mode_zero_directive(SV3_1aPpParser::Delay_mode_zero_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitUndefineall_directive(SV3_1aPpParser::Undefineall_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitModule(SV3_1aPpParser::ModuleContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndmodule(SV3_1aPpParser::EndmoduleContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_interface(SV3_1aPpParser::Sv_interfaceContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndinterface(SV3_1aPpParser::EndinterfaceContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProgram(SV3_1aPpParser::ProgramContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprogram(SV3_1aPpParser::EndprogramContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPrimitive(SV3_1aPpParser::PrimitiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprimitive(SV3_1aPpParser::EndprimitiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_package(SV3_1aPpParser::Sv_packageContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndpackage(SV3_1aPpParser::EndpackageContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitChecker(SV3_1aPpParser::CheckerContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndchecker(SV3_1aPpParser::EndcheckerContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitConfig(SV3_1aPpParser::ConfigContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndconfig(SV3_1aPpParser::EndconfigContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefine_directive(SV3_1aPpParser::Define_directiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMultiline_no_args_macro_definition(SV3_1aPpParser::Multiline_no_args_macro_definitionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMultiline_args_macro_definition(SV3_1aPpParser::Multiline_args_macro_definitionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_no_args_macro_definition(SV3_1aPpParser::Simple_no_args_macro_definitionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_args_macro_definition(SV3_1aPpParser::Simple_args_macro_definitionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitIdentifier_in_macro_body(SV3_1aPpParser::Identifier_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_no_args_macro_definition_in_macro_body(SV3_1aPpParser::Simple_no_args_macro_definition_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_args_macro_definition_in_macro_body(SV3_1aPpParser::Simple_args_macro_definition_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDirective_in_macro(SV3_1aPpParser::Directive_in_macroContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacro_arguments(SV3_1aPpParser::Macro_argumentsContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEscaped_macro_definition_body(SV3_1aPpParser::Escaped_macro_definition_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEscaped_macro_definition_body_alt1(SV3_1aPpParser::Escaped_macro_definition_body_alt1Context *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEscaped_macro_definition_body_alt2(SV3_1aPpParser::Escaped_macro_definition_body_alt2Context *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_macro_definition_body(SV3_1aPpParser::Simple_macro_definition_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSimple_macro_definition_body_in_macro_body(SV3_1aPpParser::Simple_macro_definition_body_in_macro_bodyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPragma_expression(SV3_1aPpParser::Pragma_expressionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitMacro_arg(SV3_1aPpParser::Macro_argContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPaired_parens(SV3_1aPpParser::Paired_parensContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitText_blob(SV3_1aPpParser::Text_blobContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitString(SV3_1aPpParser::StringContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEscaped_identifier(SV3_1aPpParser::Escaped_identifierContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDefault_value(SV3_1aPpParser::Default_valueContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitString_blob(SV3_1aPpParser::String_blobContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-
-};
-
diff --git a/src/parser/SV3_1aPpParserVisitor.cpp b/src/parser/SV3_1aPpParserVisitor.cpp
deleted file mode 100644
index baf05df..0000000
--- a/src/parser/SV3_1aPpParserVisitor.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aPpParser.g4 by ANTLR 4.7.2
-
-
-#include "SV3_1aPpParserVisitor.h"
-
-
diff --git a/src/parser/SV3_1aPpParserVisitor.h b/src/parser/SV3_1aPpParserVisitor.h
deleted file mode 100644
index 6f39195..0000000
--- a/src/parser/SV3_1aPpParserVisitor.h
+++ /dev/null
@@ -1,310 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aPpParser.g4 by ANTLR 4.7.2
-
-#pragma once
-
-
-#include "antlr4-runtime.h"
-#include "SV3_1aPpParser.h"
-
-
-
-/**
- * This class defines an abstract visitor for a parse tree
- * produced by SV3_1aPpParser.
- */
-class  SV3_1aPpParserVisitor : public antlr4::tree::AbstractParseTreeVisitor {
-public:
-
-  /**
-   * Visit parse trees produced by SV3_1aPpParser.
-   */
-    virtual antlrcpp::Any visitSource_text(SV3_1aPpParser::Source_textContext *context) = 0;
-
-    virtual antlrcpp::Any visitDescription(SV3_1aPpParser::DescriptionContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacroInstanceWithArgs(SV3_1aPpParser::MacroInstanceWithArgsContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacroInstanceNoArgs(SV3_1aPpParser::MacroInstanceNoArgsContext *context) = 0;
-
-    virtual antlrcpp::Any visitUnterminated_string(SV3_1aPpParser::Unterminated_stringContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacro_actual_args(SV3_1aPpParser::Macro_actual_argsContext *context) = 0;
-
-    virtual antlrcpp::Any visitComments(SV3_1aPpParser::CommentsContext *context) = 0;
-
-    virtual antlrcpp::Any visitNumber(SV3_1aPpParser::NumberContext *context) = 0;
-
-    virtual antlrcpp::Any visitPound_delay(SV3_1aPpParser::Pound_delayContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacro_definition(SV3_1aPpParser::Macro_definitionContext *context) = 0;
-
-    virtual antlrcpp::Any visitInclude_directive_one_line(SV3_1aPpParser::Include_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitInclude_directive(SV3_1aPpParser::Include_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitLine_directive_one_line(SV3_1aPpParser::Line_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitLine_directive(SV3_1aPpParser::Line_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_nettype_directive_one_line(SV3_1aPpParser::Default_nettype_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_nettype_directive(SV3_1aPpParser::Default_nettype_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_file_directive(SV3_1aPpParser::Sv_file_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_line_directive(SV3_1aPpParser::Sv_line_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitTimescale_directive_one_line(SV3_1aPpParser::Timescale_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitTimescale_directive(SV3_1aPpParser::Timescale_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitUndef_directive(SV3_1aPpParser::Undef_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfdef_directive_one_line(SV3_1aPpParser::Ifdef_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfdef_directive(SV3_1aPpParser::Ifdef_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfdef_directive_in_macro_body(SV3_1aPpParser::Ifdef_directive_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfndef_directive_one_line(SV3_1aPpParser::Ifndef_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfndef_directive(SV3_1aPpParser::Ifndef_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitIfndef_directive_in_macro_body(SV3_1aPpParser::Ifndef_directive_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitElsif_directive_one_line(SV3_1aPpParser::Elsif_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitElsif_directive(SV3_1aPpParser::Elsif_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitElsif_directive_in_macro_body(SV3_1aPpParser::Elsif_directive_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitElseif_directive_one_line(SV3_1aPpParser::Elseif_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitElseif_directive(SV3_1aPpParser::Elseif_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitElseif_directive_in_macro_body(SV3_1aPpParser::Elseif_directive_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitElse_directive_one_line(SV3_1aPpParser::Else_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitElse_directive(SV3_1aPpParser::Else_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndif_directive_one_line(SV3_1aPpParser::Endif_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndif_directive(SV3_1aPpParser::Endif_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitResetall_directive_one_line(SV3_1aPpParser::Resetall_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitResetall_directive(SV3_1aPpParser::Resetall_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitBegin_keywords_directive_one_line(SV3_1aPpParser::Begin_keywords_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitBegin_keywords_directive(SV3_1aPpParser::Begin_keywords_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEnd_keywords_directive_one_line(SV3_1aPpParser::End_keywords_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEnd_keywords_directive(SV3_1aPpParser::End_keywords_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitPragma_directive_one_line(SV3_1aPpParser::Pragma_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitPragma_directive(SV3_1aPpParser::Pragma_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitCelldefine_directive_one_line(SV3_1aPpParser::Celldefine_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitCelldefine_directive(SV3_1aPpParser::Celldefine_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndcelldefine_directive_one_line(SV3_1aPpParser::Endcelldefine_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndcelldefine_directive(SV3_1aPpParser::Endcelldefine_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitProtect_directive_one_line(SV3_1aPpParser::Protect_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitProtect_directive(SV3_1aPpParser::Protect_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprotect_directive_one_line(SV3_1aPpParser::Endprotect_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprotect_directive(SV3_1aPpParser::Endprotect_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitProtected_directive_one_line(SV3_1aPpParser::Protected_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitProtected_directive(SV3_1aPpParser::Protected_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprotected_directive_one_line(SV3_1aPpParser::Endprotected_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprotected_directive(SV3_1aPpParser::Endprotected_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitExpand_vectornets_directive_one_line(SV3_1aPpParser::Expand_vectornets_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitExpand_vectornets_directive(SV3_1aPpParser::Expand_vectornets_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoexpand_vectornets_directive_one_line(SV3_1aPpParser::Noexpand_vectornets_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoexpand_vectornets_directive(SV3_1aPpParser::Noexpand_vectornets_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitAutoexpand_vectornets_directive_one_line(SV3_1aPpParser::Autoexpand_vectornets_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitAutoexpand_vectornets_directive(SV3_1aPpParser::Autoexpand_vectornets_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitUselib_directive_one_line(SV3_1aPpParser::Uselib_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitUselib_directive(SV3_1aPpParser::Uselib_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDisable_portfaults_directive_one_line(SV3_1aPpParser::Disable_portfaults_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDisable_portfaults_directive(SV3_1aPpParser::Disable_portfaults_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEnable_portfaults_directive_one_line(SV3_1aPpParser::Enable_portfaults_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitEnable_portfaults_directive(SV3_1aPpParser::Enable_portfaults_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNosuppress_faults_directive_one_line(SV3_1aPpParser::Nosuppress_faults_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNosuppress_faults_directive(SV3_1aPpParser::Nosuppress_faults_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSuppress_faults_directive_one_line(SV3_1aPpParser::Suppress_faults_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitSuppress_faults_directive(SV3_1aPpParser::Suppress_faults_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSigned_directive_one_line(SV3_1aPpParser::Signed_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitSigned_directive(SV3_1aPpParser::Signed_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitUnsigned_directive_one_line(SV3_1aPpParser::Unsigned_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitUnsigned_directive(SV3_1aPpParser::Unsigned_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitRemove_gatename_directive_one_line(SV3_1aPpParser::Remove_gatename_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitRemove_gatename_directive(SV3_1aPpParser::Remove_gatename_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoremove_gatenames_directive_one_line(SV3_1aPpParser::Noremove_gatenames_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoremove_gatenames_directive(SV3_1aPpParser::Noremove_gatenames_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitRemove_netname_directive_one_line(SV3_1aPpParser::Remove_netname_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitRemove_netname_directive(SV3_1aPpParser::Remove_netname_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoremove_netnames_directive_one_line(SV3_1aPpParser::Noremove_netnames_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoremove_netnames_directive(SV3_1aPpParser::Noremove_netnames_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitAccelerate_directive_one_line(SV3_1aPpParser::Accelerate_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitAccelerate_directive(SV3_1aPpParser::Accelerate_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoaccelerate_directive_one_line(SV3_1aPpParser::Noaccelerate_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNoaccelerate_directive(SV3_1aPpParser::Noaccelerate_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_trireg_strenght_directive_one_line(SV3_1aPpParser::Default_trireg_strenght_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_trireg_strenght_directive(SV3_1aPpParser::Default_trireg_strenght_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_decay_time_directive_one_line(SV3_1aPpParser::Default_decay_time_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_decay_time_directive(SV3_1aPpParser::Default_decay_time_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitUnconnected_drive_directive_one_line(SV3_1aPpParser::Unconnected_drive_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitUnconnected_drive_directive(SV3_1aPpParser::Unconnected_drive_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitNounconnected_drive_directive_one_line(SV3_1aPpParser::Nounconnected_drive_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitNounconnected_drive_directive(SV3_1aPpParser::Nounconnected_drive_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_distributed_directive_one_line(SV3_1aPpParser::Delay_mode_distributed_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_distributed_directive(SV3_1aPpParser::Delay_mode_distributed_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_path_directive_one_line(SV3_1aPpParser::Delay_mode_path_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_path_directive(SV3_1aPpParser::Delay_mode_path_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_unit_directive_one_line(SV3_1aPpParser::Delay_mode_unit_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_unit_directive(SV3_1aPpParser::Delay_mode_unit_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_zero_directive_one_line(SV3_1aPpParser::Delay_mode_zero_directive_one_lineContext *context) = 0;
-
-    virtual antlrcpp::Any visitDelay_mode_zero_directive(SV3_1aPpParser::Delay_mode_zero_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitUndefineall_directive(SV3_1aPpParser::Undefineall_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitModule(SV3_1aPpParser::ModuleContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndmodule(SV3_1aPpParser::EndmoduleContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_interface(SV3_1aPpParser::Sv_interfaceContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndinterface(SV3_1aPpParser::EndinterfaceContext *context) = 0;
-
-    virtual antlrcpp::Any visitProgram(SV3_1aPpParser::ProgramContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprogram(SV3_1aPpParser::EndprogramContext *context) = 0;
-
-    virtual antlrcpp::Any visitPrimitive(SV3_1aPpParser::PrimitiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprimitive(SV3_1aPpParser::EndprimitiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_package(SV3_1aPpParser::Sv_packageContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndpackage(SV3_1aPpParser::EndpackageContext *context) = 0;
-
-    virtual antlrcpp::Any visitChecker(SV3_1aPpParser::CheckerContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndchecker(SV3_1aPpParser::EndcheckerContext *context) = 0;
-
-    virtual antlrcpp::Any visitConfig(SV3_1aPpParser::ConfigContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndconfig(SV3_1aPpParser::EndconfigContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefine_directive(SV3_1aPpParser::Define_directiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitMultiline_no_args_macro_definition(SV3_1aPpParser::Multiline_no_args_macro_definitionContext *context) = 0;
-
-    virtual antlrcpp::Any visitMultiline_args_macro_definition(SV3_1aPpParser::Multiline_args_macro_definitionContext *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_no_args_macro_definition(SV3_1aPpParser::Simple_no_args_macro_definitionContext *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_args_macro_definition(SV3_1aPpParser::Simple_args_macro_definitionContext *context) = 0;
-
-    virtual antlrcpp::Any visitIdentifier_in_macro_body(SV3_1aPpParser::Identifier_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_no_args_macro_definition_in_macro_body(SV3_1aPpParser::Simple_no_args_macro_definition_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_args_macro_definition_in_macro_body(SV3_1aPpParser::Simple_args_macro_definition_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitDirective_in_macro(SV3_1aPpParser::Directive_in_macroContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacro_arguments(SV3_1aPpParser::Macro_argumentsContext *context) = 0;
-
-    virtual antlrcpp::Any visitEscaped_macro_definition_body(SV3_1aPpParser::Escaped_macro_definition_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitEscaped_macro_definition_body_alt1(SV3_1aPpParser::Escaped_macro_definition_body_alt1Context *context) = 0;
-
-    virtual antlrcpp::Any visitEscaped_macro_definition_body_alt2(SV3_1aPpParser::Escaped_macro_definition_body_alt2Context *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_macro_definition_body(SV3_1aPpParser::Simple_macro_definition_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitSimple_macro_definition_body_in_macro_body(SV3_1aPpParser::Simple_macro_definition_body_in_macro_bodyContext *context) = 0;
-
-    virtual antlrcpp::Any visitPragma_expression(SV3_1aPpParser::Pragma_expressionContext *context) = 0;
-
-    virtual antlrcpp::Any visitMacro_arg(SV3_1aPpParser::Macro_argContext *context) = 0;
-
-    virtual antlrcpp::Any visitPaired_parens(SV3_1aPpParser::Paired_parensContext *context) = 0;
-
-    virtual antlrcpp::Any visitText_blob(SV3_1aPpParser::Text_blobContext *context) = 0;
-
-    virtual antlrcpp::Any visitString(SV3_1aPpParser::StringContext *context) = 0;
-
-    virtual antlrcpp::Any visitEscaped_identifier(SV3_1aPpParser::Escaped_identifierContext *context) = 0;
-
-    virtual antlrcpp::Any visitDefault_value(SV3_1aPpParser::Default_valueContext *context) = 0;
-
-    virtual antlrcpp::Any visitString_blob(SV3_1aPpParser::String_blobContext *context) = 0;
-
-
-};
-
diff --git a/src/parser/SV3_1aSplitterParser.cpp b/src/parser/SV3_1aSplitterParser.cpp
index a4e159d..a098ff9 100644
--- a/src/parser/SV3_1aSplitterParser.cpp
+++ b/src/parser/SV3_1aSplitterParser.cpp
@@ -3,7 +3,6 @@
 
 
 #include "SV3_1aSplitterParserListener.h"
-#include "SV3_1aSplitterParserVisitor.h"
 
 #include "SV3_1aSplitterParser.h"
 
@@ -63,14 +62,6 @@
     parserListener->exitSource_text(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::Source_textContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitSource_text(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::Source_textContext* SV3_1aSplitterParser::source_text() {
   Source_textContext *_localctx = _tracker.createInstance<Source_textContext>(_ctx, getState());
   enterRule(_localctx, 0, SV3_1aSplitterParser::RuleSource_text);
@@ -200,14 +191,6 @@
     parserListener->exitDescription(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::DescriptionContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitDescription(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::DescriptionContext* SV3_1aSplitterParser::description() {
   DescriptionContext *_localctx = _tracker.createInstance<DescriptionContext>(_ctx, getState());
   enterRule(_localctx, 2, SV3_1aSplitterParser::RuleDescription);
@@ -365,14 +348,6 @@
     parserListener->exitModule(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::ModuleContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitModule(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::ModuleContext* SV3_1aSplitterParser::module() {
   ModuleContext *_localctx = _tracker.createInstance<ModuleContext>(_ctx, getState());
   enterRule(_localctx, 4, SV3_1aSplitterParser::RuleModule);
@@ -422,14 +397,6 @@
     parserListener->exitEndmodule(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndmoduleContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndmodule(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndmoduleContext* SV3_1aSplitterParser::endmodule() {
   EndmoduleContext *_localctx = _tracker.createInstance<EndmoduleContext>(_ctx, getState());
   enterRule(_localctx, 6, SV3_1aSplitterParser::RuleEndmodule);
@@ -479,14 +446,6 @@
     parserListener->exitSv_interface(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::Sv_interfaceContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitSv_interface(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::Sv_interfaceContext* SV3_1aSplitterParser::sv_interface() {
   Sv_interfaceContext *_localctx = _tracker.createInstance<Sv_interfaceContext>(_ctx, getState());
   enterRule(_localctx, 8, SV3_1aSplitterParser::RuleSv_interface);
@@ -536,14 +495,6 @@
     parserListener->exitEndinterface(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndinterfaceContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndinterface(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndinterfaceContext* SV3_1aSplitterParser::endinterface() {
   EndinterfaceContext *_localctx = _tracker.createInstance<EndinterfaceContext>(_ctx, getState());
   enterRule(_localctx, 10, SV3_1aSplitterParser::RuleEndinterface);
@@ -593,14 +544,6 @@
     parserListener->exitProgram(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::ProgramContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitProgram(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::ProgramContext* SV3_1aSplitterParser::program() {
   ProgramContext *_localctx = _tracker.createInstance<ProgramContext>(_ctx, getState());
   enterRule(_localctx, 12, SV3_1aSplitterParser::RuleProgram);
@@ -650,14 +593,6 @@
     parserListener->exitEndprogram(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndprogramContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndprogram(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndprogramContext* SV3_1aSplitterParser::endprogram() {
   EndprogramContext *_localctx = _tracker.createInstance<EndprogramContext>(_ctx, getState());
   enterRule(_localctx, 14, SV3_1aSplitterParser::RuleEndprogram);
@@ -707,14 +642,6 @@
     parserListener->exitPrimitive(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::PrimitiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitPrimitive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::PrimitiveContext* SV3_1aSplitterParser::primitive() {
   PrimitiveContext *_localctx = _tracker.createInstance<PrimitiveContext>(_ctx, getState());
   enterRule(_localctx, 16, SV3_1aSplitterParser::RulePrimitive);
@@ -764,14 +691,6 @@
     parserListener->exitEndprimitive(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndprimitiveContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndprimitive(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndprimitiveContext* SV3_1aSplitterParser::endprimitive() {
   EndprimitiveContext *_localctx = _tracker.createInstance<EndprimitiveContext>(_ctx, getState());
   enterRule(_localctx, 18, SV3_1aSplitterParser::RuleEndprimitive);
@@ -821,14 +740,6 @@
     parserListener->exitSv_package(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::Sv_packageContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitSv_package(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::Sv_packageContext* SV3_1aSplitterParser::sv_package() {
   Sv_packageContext *_localctx = _tracker.createInstance<Sv_packageContext>(_ctx, getState());
   enterRule(_localctx, 20, SV3_1aSplitterParser::RuleSv_package);
@@ -878,14 +789,6 @@
     parserListener->exitEndpackage(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndpackageContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndpackage(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndpackageContext* SV3_1aSplitterParser::endpackage() {
   EndpackageContext *_localctx = _tracker.createInstance<EndpackageContext>(_ctx, getState());
   enterRule(_localctx, 22, SV3_1aSplitterParser::RuleEndpackage);
@@ -935,14 +838,6 @@
     parserListener->exitChecker(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::CheckerContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitChecker(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::CheckerContext* SV3_1aSplitterParser::checker() {
   CheckerContext *_localctx = _tracker.createInstance<CheckerContext>(_ctx, getState());
   enterRule(_localctx, 24, SV3_1aSplitterParser::RuleChecker);
@@ -992,14 +887,6 @@
     parserListener->exitEndchecker(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndcheckerContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndchecker(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndcheckerContext* SV3_1aSplitterParser::endchecker() {
   EndcheckerContext *_localctx = _tracker.createInstance<EndcheckerContext>(_ctx, getState());
   enterRule(_localctx, 26, SV3_1aSplitterParser::RuleEndchecker);
@@ -1049,14 +936,6 @@
     parserListener->exitConfig(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::ConfigContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitConfig(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::ConfigContext* SV3_1aSplitterParser::config() {
   ConfigContext *_localctx = _tracker.createInstance<ConfigContext>(_ctx, getState());
   enterRule(_localctx, 28, SV3_1aSplitterParser::RuleConfig);
@@ -1106,14 +985,6 @@
     parserListener->exitEndconfig(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::EndconfigContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitEndconfig(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::EndconfigContext* SV3_1aSplitterParser::endconfig() {
   EndconfigContext *_localctx = _tracker.createInstance<EndconfigContext>(_ctx, getState());
   enterRule(_localctx, 30, SV3_1aSplitterParser::RuleEndconfig);
@@ -1163,14 +1034,6 @@
     parserListener->exitAny(this);
 }
 
-
-antlrcpp::Any SV3_1aSplitterParser::AnyContext::accept(tree::ParseTreeVisitor *visitor) {
-  if (auto parserVisitor = dynamic_cast<SV3_1aSplitterParserVisitor*>(visitor))
-    return parserVisitor->visitAny(this);
-  else
-    return visitor->visitChildren(this);
-}
-
 SV3_1aSplitterParser::AnyContext* SV3_1aSplitterParser::any() {
   AnyContext *_localctx = _tracker.createInstance<AnyContext>(_ctx, getState());
   enterRule(_localctx, 32, SV3_1aSplitterParser::RuleAny);
diff --git a/src/parser/SV3_1aSplitterParser.h b/src/parser/SV3_1aSplitterParser.h
index b879dd2..7d44302 100644
--- a/src/parser/SV3_1aSplitterParser.h
+++ b/src/parser/SV3_1aSplitterParser.h
@@ -63,8 +63,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -92,8 +90,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -107,8 +103,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -122,8 +116,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -137,8 +129,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -152,8 +142,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -167,8 +155,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -182,8 +168,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -197,8 +181,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -212,8 +194,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -227,8 +207,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -242,8 +220,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -257,8 +233,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -272,8 +246,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -287,8 +259,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -302,8 +272,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
@@ -317,8 +285,6 @@
 
     virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
     virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
-
-    virtual antlrcpp::Any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
    
   };
 
diff --git a/src/parser/SV3_1aSplitterParserBaseVisitor.cpp b/src/parser/SV3_1aSplitterParserBaseVisitor.cpp
deleted file mode 100644
index 1d17a79..0000000
--- a/src/parser/SV3_1aSplitterParserBaseVisitor.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aSplitterParser.g4 by ANTLR 4.7.2
-
-
-#include "SV3_1aSplitterParserBaseVisitor.h"
-
-
diff --git a/src/parser/SV3_1aSplitterParserBaseVisitor.h b/src/parser/SV3_1aSplitterParserBaseVisitor.h
deleted file mode 100644
index 8239f03..0000000
--- a/src/parser/SV3_1aSplitterParserBaseVisitor.h
+++ /dev/null
@@ -1,88 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aSplitterParser.g4 by ANTLR 4.7.2
-
-#pragma once
-
-
-#include "antlr4-runtime.h"
-#include "SV3_1aSplitterParserVisitor.h"
-
-
-/**
- * This class provides an empty implementation of SV3_1aSplitterParserVisitor, which can be
- * extended to create a visitor which only needs to handle a subset of the available methods.
- */
-class  SV3_1aSplitterParserBaseVisitor : public SV3_1aSplitterParserVisitor {
-public:
-
-  virtual antlrcpp::Any visitSource_text(SV3_1aSplitterParser::Source_textContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitDescription(SV3_1aSplitterParser::DescriptionContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitModule(SV3_1aSplitterParser::ModuleContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndmodule(SV3_1aSplitterParser::EndmoduleContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_interface(SV3_1aSplitterParser::Sv_interfaceContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndinterface(SV3_1aSplitterParser::EndinterfaceContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitProgram(SV3_1aSplitterParser::ProgramContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprogram(SV3_1aSplitterParser::EndprogramContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitPrimitive(SV3_1aSplitterParser::PrimitiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndprimitive(SV3_1aSplitterParser::EndprimitiveContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitSv_package(SV3_1aSplitterParser::Sv_packageContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndpackage(SV3_1aSplitterParser::EndpackageContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitChecker(SV3_1aSplitterParser::CheckerContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndchecker(SV3_1aSplitterParser::EndcheckerContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitConfig(SV3_1aSplitterParser::ConfigContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitEndconfig(SV3_1aSplitterParser::EndconfigContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-  virtual antlrcpp::Any visitAny(SV3_1aSplitterParser::AnyContext *ctx) override {
-    return visitChildren(ctx);
-  }
-
-
-};
-
diff --git a/src/parser/SV3_1aSplitterParserVisitor.cpp b/src/parser/SV3_1aSplitterParserVisitor.cpp
deleted file mode 100644
index 88034b3..0000000
--- a/src/parser/SV3_1aSplitterParserVisitor.cpp
+++ /dev/null
@@ -1,7 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aSplitterParser.g4 by ANTLR 4.7.2
-
-
-#include "SV3_1aSplitterParserVisitor.h"
-
-
diff --git a/src/parser/SV3_1aSplitterParserVisitor.h b/src/parser/SV3_1aSplitterParserVisitor.h
deleted file mode 100644
index 7ab7624..0000000
--- a/src/parser/SV3_1aSplitterParserVisitor.h
+++ /dev/null
@@ -1,58 +0,0 @@
-
-// Generated from /home/alain/Surelog/grammar/SV3_1aSplitterParser.g4 by ANTLR 4.7.2
-
-#pragma once
-
-
-#include "antlr4-runtime.h"
-#include "SV3_1aSplitterParser.h"
-
-
-
-/**
- * This class defines an abstract visitor for a parse tree
- * produced by SV3_1aSplitterParser.
- */
-class  SV3_1aSplitterParserVisitor : public antlr4::tree::AbstractParseTreeVisitor {
-public:
-
-  /**
-   * Visit parse trees produced by SV3_1aSplitterParser.
-   */
-    virtual antlrcpp::Any visitSource_text(SV3_1aSplitterParser::Source_textContext *context) = 0;
-
-    virtual antlrcpp::Any visitDescription(SV3_1aSplitterParser::DescriptionContext *context) = 0;
-
-    virtual antlrcpp::Any visitModule(SV3_1aSplitterParser::ModuleContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndmodule(SV3_1aSplitterParser::EndmoduleContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_interface(SV3_1aSplitterParser::Sv_interfaceContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndinterface(SV3_1aSplitterParser::EndinterfaceContext *context) = 0;
-
-    virtual antlrcpp::Any visitProgram(SV3_1aSplitterParser::ProgramContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprogram(SV3_1aSplitterParser::EndprogramContext *context) = 0;
-
-    virtual antlrcpp::Any visitPrimitive(SV3_1aSplitterParser::PrimitiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndprimitive(SV3_1aSplitterParser::EndprimitiveContext *context) = 0;
-
-    virtual antlrcpp::Any visitSv_package(SV3_1aSplitterParser::Sv_packageContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndpackage(SV3_1aSplitterParser::EndpackageContext *context) = 0;
-
-    virtual antlrcpp::Any visitChecker(SV3_1aSplitterParser::CheckerContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndchecker(SV3_1aSplitterParser::EndcheckerContext *context) = 0;
-
-    virtual antlrcpp::Any visitConfig(SV3_1aSplitterParser::ConfigContext *context) = 0;
-
-    virtual antlrcpp::Any visitEndconfig(SV3_1aSplitterParser::EndconfigContext *context) = 0;
-
-    virtual antlrcpp::Any visitAny(SV3_1aSplitterParser::AnyContext *context) = 0;
-
-
-};
-