diff --git a/cmake_modules/wolfConfig.cmake b/cmake_modules/wolfConfig.cmake
index 90e622c1b964cfb78b1664b1ed9794f8004bff47..7556468eb89689ea49f9ab98c6d511c9efee0db3 100644
--- a/cmake_modules/wolfConfig.cmake
+++ b/cmake_modules/wolfConfig.cmake
@@ -84,9 +84,13 @@ FIND_PACKAGE(YamlCpp REQUIRED)
 list(APPEND wolf_INCLUDE_DIRS ${YAMLCPP_INCLUDE_DIRS})
 list(APPEND wolf_LIBRARIES ${YAMLCPP_LIBRARY})
 
-if(NOT Eigen_FOUND)
+#Eigen
+# FIND_PACKAGE(Eigen3 REQUIRED)
+# list(APPEND wolf_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIRS})
+
+if(NOT Eigen3_FOUND)
   FIND_PACKAGE(Eigen3 REQUIRED)
-  list(APPEND wolf_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIRS})
 endif()
+list(APPEND wolf_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIRS})
 
-SET(CMAKE_MODULE_PATH ${BACKUP_MODULE_PATH})
\ No newline at end of file
+SET(CMAKE_MODULE_PATH ${BACKUP_MODULE_PATH})
diff --git a/include/core/utils/converter.h b/include/core/utils/converter.h
index dceaf3e01bce136b7841c5b9bd015203de200386..5cfa3c98007ea03eea6c0fadf32d8e7e3cfc26f8 100644
--- a/include/core/utils/converter.h
+++ b/include/core/utils/converter.h
@@ -59,8 +59,8 @@ namespace utils{
     * @return <b>{std::array<std::string, 2>}</b> pair ([N,M],[a1,a2,a3,...]) or just ([a1,a2,a3...])
     */
     static inline std::array<std::string,2> splitMatrixStringRepresentation(std::string matrix){
-        std::regex rgx("\\[\\[((?:[0-9]+,?)+)\\],((?:(?:[0-9]*\\.)?[0-9]+,?)+)\\]");
-        std::regex rgxStatic("\\[((?:(?:[0-9]*\\.)?[0-9]+,?)+)\\]");
+        std::regex rgx("\\[\\[((?:[0-9]+,?)+)\\],((?:-?[0-9]*(?:\\.[0-9]+)?,?)+)\\]");
+        std::regex rgxStatic("\\[((?:(?:-?[0-9]*)(?:\\.[0-9]+)?,?)+)\\]");
         std::smatch matches;
         std::smatch matchesStatic;
         std::array<std::string,2> values = {{"[]","[]"}};