changeset 4:0e154787183d

new interpreter and qt_interpreter objects
author John W. Eaton <jwe@octave.org>
date Wed, 22 May 2019 17:30:46 -0400
parents 52c033864347
children 54edd85237ab
files Makefile calc.pro gui-main.cpp gui-main.h interpreter.cpp interpreter.h make-log parse.h parse.yy parser.h parser.yy qt-interpreter.cpp qt-interpreter.h tty-main.cpp
diffstat 14 files changed, 452 insertions(+), 6937 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Wed May 22 16:21:06 2019 -0400
+++ b/Makefile	Wed May 22 17:30:46 2019 -0400
@@ -1,4 +1,4 @@
 include calc.mk
 
-parse.cpp: parse.yy
-	bison -o parse.cpp parse.yy
+parser.cpp: parser.yy
+	bison -o parser.cpp parser.yy
--- a/calc.pro	Wed May 22 16:21:06 2019 -0400
+++ b/calc.pro	Wed May 22 17:30:46 2019 -0400
@@ -1,8 +1,20 @@
 MAKEFILE = calc.mk
 
-SOURCES = parse.cpp main.cpp gui-main.cpp tty-main.cpp
+SOURCES = \
+  parser.cpp \
+  interpreter.cpp \
+  main.cpp \
+  gui-main.cpp \
+  tty-main.cpp \
+  qt-interpreter.cpp
 
-HEADERS = parse.h gui-main.h tty-main.h
+HEADERS = \
+  parser.h \
+  interpreter.h \
+  main.h \
+  gui-main.h \
+  tty-main.h \
+  qt-interpreter.h
 
 LIBS += -lreadline
 
--- a/gui-main.cpp	Wed May 22 16:21:06 2019 -0400
+++ b/gui-main.cpp	Wed May 22 17:30:46 2019 -0400
@@ -9,94 +9,33 @@
 #include <QKeyEvent>
 #include <QTextDocument>
 #include <QTextEdit>
+#include <QTimer>
 
 #include "gui-main.h"
 #include "main.h"
 
 #include "gui-main.h"
-#include "parse.h"
+#include "interpreter.h"
+#include "parser.h"
 
 #include <readline/readline.h>
 #include <readline/history.h>
 
 namespace gui
 {
-  static int available_char = 0;
+  int available_char = 0;
+
+  command_window *calc_interaction_window = 0;
 
   static inline int ctrl (int c)
   {
     return c & 0x1f;
   }
 
-  static command_window *calc_interaction_window = 0;
-
-  static int getc (FILE *)
-  {
-    int tmp = available_char;
-    available_char = 0;
-    return tmp;
-  }
-
-  static void redisplay (void)
-  {
-    if (calc_interaction_window)
-      calc_interaction_window->redisplay ();
-  }
-
-  static void prep_term (int)
-  {
-  }
-
-  static void deprep_term (void)
-  {
-  }
-
-  static void accept_line (char *line)
-  {
-    if (calc_interaction_window)
-      calc_interaction_window->accept (line ? line : "");
-  }
-
-  static void display_completion_matches (char **matches, int num_matches,
-                                          int /* max_length */)
-  {
-    if (calc_interaction_window)
-      {
-        std::ostringstream buf;
-
-        if (num_matches > 1)
-          buf << "\n";
-
-        for (int i = 1; i < num_matches; i++)
-          buf << matches[i] << "\n";
-
-        calc_interaction_window->insert_at_end (buf.str ());
-
-        calc_interaction_window->redisplay ();
-      }
-  }
-
-  static void readline_init (void)
-  {
-    rl_initialize ();
-
-    rl_getc_function = getc;
-    rl_redisplay_function = redisplay;
-    rl_prep_term_function = prep_term;
-    rl_deprep_term_function = deprep_term;
-    rl_completion_display_matches_hook = display_completion_matches;
-
-    rl_callback_handler_install (">> ", accept_line);
-  }
-
-  static void readline_fini (void)
-  {
-    rl_callback_handler_remove ();
-  }
-
   command_window::command_window (QWidget *p)
     : QTextEdit (p),
       m_buffer (new QTextDocument ()),
+      m_interpreter (new calc::qt_interpreter ()),
       beg_mark (), prompt_mark ()
   {
     setWindowTitle ("Qt::TextEdit example");
@@ -119,6 +58,10 @@
        "Down Arrow key moves to next line in the comand history.\n\n");
 
     beg_mark = set_mark ();
+
+    // Defer initializing and executing the interpreter until after the main
+    // window and QApplication are running to prevent race conditions
+    QTimer::singleShot (0, m_interpreter, SLOT (execute (void)));
   }
 
   // Accept an input line, parse and possibly execute it.
@@ -148,7 +91,7 @@
     erase_line ();
 
     std::string line = rl_line_buffer ? rl_line_buffer : "";
-    std::string prompt = (rl_prompt && interpreter::beg_of_stmt) ? rl_prompt : "";
+    std::string prompt = (rl_prompt && parser::beg_of_stmt) ? rl_prompt : "";
 
     insert_line (prompt, line);
 
@@ -249,7 +192,6 @@
       }
   }
 
-
   void command_window::handle_input_char (int key)
   {
     available_char = key;
@@ -370,22 +312,14 @@
 
   int main (int argc, char *argv[])
   {
-    interpreter::parser_init ();
-
     QApplication app (argc, argv);
 
     calc_interaction_window = new command_window ();
 
     calc_interaction_window->show ();
 
-    readline_init ();
-
     int status = app.exec ();
 
-    readline_fini ();
-
-    interpreter::parser_fini ();
-
     return status;
   }
 
--- a/gui-main.h	Wed May 22 16:21:06 2019 -0400
+++ b/gui-main.h	Wed May 22 17:30:46 2019 -0400
@@ -12,6 +12,8 @@
 #include <QTextDocument>
 #include <QTextEdit>
 
+#include "qt-interpreter.h"
+
 namespace gui
 {
   class command_window : public QTextEdit
@@ -77,6 +79,8 @@
 
     QTextDocument *m_buffer;
 
+    calc::qt_interpreter *m_interpreter;
+
     int beg_mark;
     int prompt_mark;
   };
@@ -86,6 +90,9 @@
   extern void emit_error (const std::string& msg);
 
   extern void emit_result (double value);
+
+  extern int available_char;
+  extern command_window *calc_interaction_window;
 }
 
 #endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/interpreter.cpp	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,47 @@
+#include <string>
+
+#include <unistd.h>
+
+#include "interpreter.h"
+#include "parser.h"
+
+#include "main.h"
+#include "gui-main.h"
+#include "tty-main.h"
+
+namespace interpreter
+{
+  void init (void)
+  {
+    parser::init ();
+  }
+
+  void fini (void)
+  {
+    parser::fini ();
+  }
+
+  int parse_and_execute (const std::string& line)
+  {
+    return parser::parse_and_execute (line);
+  }
+
+  void emit_result (double value)
+  {
+    // Simulate a delay in calculation.
+    sleep (1);
+
+    if (calc::tty_mode)
+      tty::emit_result (value);
+    else
+      gui::emit_result (value);
+  }
+
+  void emit_error (const char *msg)
+  {
+    if (calc::tty_mode)
+      tty::emit_error (msg);
+    else
+      gui::emit_error (msg);
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/interpreter.h	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,16 @@
+#if ! defined (calc_interpreter_h)
+#define calc_interpreter_h 1
+
+namespace interpreter
+{
+  extern void init (void);
+  extern void fini (void);
+
+  extern int parse_and_execute (const std::string& line);
+
+  extern void emit_error (const char *msg);
+
+  extern void emit_result (double value);
+}
+
+#endif
--- a/make-log	Wed May 22 16:21:06 2019 -0400
+++ b/make-log	Wed May 22 17:30:46 2019 -0400
@@ -1,6613 +1,14 @@
-g++ -c -pipe -g -Wall -W -D_REENTRANT -fPIC -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o gui-main.o gui-main.cpp
-gui-main.cpp:1:1: error: ‘include’ does not name a type
- include <iostream>
- ^~~~~~~
-In file included from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/postypes.h:98:11: error: ‘ptrdiff_t’ does not name a type
-   typedef ptrdiff_t streamsize; // Signed integral type
-           ^~~~~~~~~
-/usr/include/c++/8/bits/postypes.h:98:11: note: ‘ptrdiff_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
-/usr/include/c++/8/bits/postypes.h:41:1:
-+#include <cstddef>
- 
-/usr/include/c++/8/bits/postypes.h:98:11:
-   typedef ptrdiff_t streamsize; // Signed integral type
-           ^~~~~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:120:31: error: declaration of ‘operator new’ as non-function
- void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
-                               ^
-/usr/include/c++/8/new:120:25: error: ‘size_t’ is not a member of ‘std’
- void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
-                         ^~~~~~
-/usr/include/c++/8/new:120:25: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:121:41: error: attributes after parenthesized initializer ignored [-fpermissive]
-   __attribute__((__externally_visible__));
-                                         ^
-/usr/include/c++/8/new:122:33: error: declaration of ‘operator new []’ as non-function
- void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
-                                 ^
-/usr/include/c++/8/new:122:27: error: ‘size_t’ is not a member of ‘std’
- void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
-                           ^~~~~~
-/usr/include/c++/8/new:122:27: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:123:41: error: attributes after parenthesized initializer ignored [-fpermissive]
-   __attribute__((__externally_visible__));
-                                         ^
-/usr/include/c++/8/new:129:34: error: ‘std::size_t’ has not been declared
- void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
-                                  ^~~~~~
-/usr/include/c++/8/new:131:36: error: ‘std::size_t’ has not been declared
- void operator delete[](void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
-                                    ^~~~~~
-/usr/include/c++/8/new:134:25: error: declaration of ‘operator new’ as non-function
- void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
-                         ^~~~~~
-/usr/include/c++/8/new:134:25: error: ‘size_t’ is not a member of ‘std’
-/usr/include/c++/8/new:134:25: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:134:33: error: expected primary-expression before ‘const’
- void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
-                                 ^~~~~
-/usr/include/c++/8/new:136:27: error: declaration of ‘operator new []’ as non-function
- void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
-                           ^~~~~~
-/usr/include/c++/8/new:136:27: error: ‘size_t’ is not a member of ‘std’
-/usr/include/c++/8/new:136:27: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:136:35: error: expected primary-expression before ‘const’
- void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
-                                   ^~~~~
-/usr/include/c++/8/new:168:32: error: declaration of ‘operator new’ as non-function
- inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
-                                ^~~~~~
-/usr/include/c++/8/new:168:32: error: ‘size_t’ is not a member of ‘std’
-/usr/include/c++/8/new:168:32: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:168:40: error: expected primary-expression before ‘void’
- inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
-                                        ^~~~
-/usr/include/c++/8/new:170:34: error: declaration of ‘operator new []’ as non-function
- inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
-                                  ^~~~~~
-/usr/include/c++/8/new:170:34: error: ‘size_t’ is not a member of ‘std’
-/usr/include/c++/8/new:170:34: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/exception_ptr.h:40,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/new:170:42: error: expected primary-expression before ‘void’
- inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
-                                          ^~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:350:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Size>
-                               ^~~~~~
-/usr/include/c++/8/type_traits:351:25: error: ‘_Size’ was not declared in this scope
-     struct is_array<_Tp[_Size]>
-                         ^~~~~
-/usr/include/c++/8/type_traits:351:31: error: template argument 1 is invalid
-     struct is_array<_Tp[_Size]>
-                               ^
-/usr/include/c++/8/type_traits:549:42: error: ‘nullptr_t’ is not a member of ‘std’
-     struct __is_null_pointer_helper<std::nullptr_t>
-                                          ^~~~~~~~~
-/usr/include/c++/8/type_traits:549:42: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:549:42: error: ‘nullptr_t’ is not a member of ‘std’
-     struct __is_null_pointer_helper<std::nullptr_t>
-                                          ^~~~~~~~~
-/usr/include/c++/8/type_traits:549:42: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:549:51: error: template argument 1 is invalid
-     struct __is_null_pointer_helper<std::nullptr_t>
-                                                   ^
-/usr/include/c++/8/type_traits:1289:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, alignof(_Tp)> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1289:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1289:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, alignof(_Tp)> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1289:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1289:57: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, alignof(_Tp)> { };
-                                                         ^
-/usr/include/c++/8/type_traits:1289:57: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1294:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 0> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1294:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1294:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 0> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1294:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1294:46: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, 0> { };
-                                              ^
-/usr/include/c++/8/type_traits:1294:46: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1296:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Size>
-                               ^~~~~~
-/usr/include/c++/8/type_traits:1297:21: error: ‘_Size’ was not declared in this scope
-     struct rank<_Tp[_Size]>
-                     ^~~~~
-/usr/include/c++/8/type_traits:1297:27: error: template argument 1 is invalid
-     struct rank<_Tp[_Size]>
-                           ^
-/usr/include/c++/8/type_traits:1298:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1298:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1298:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1298:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1298:65: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                                                 ^
-/usr/include/c++/8/type_traits:1298:65: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1302:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1302:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1302:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1302:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1302:65: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
-                                                                 ^
-/usr/include/c++/8/type_traits:1302:65: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1307:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 0> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1307:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1307:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 0> { };
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1307:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1307:46: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, 0> { };
-                                              ^
-/usr/include/c++/8/type_traits:1307:46: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1309:47: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, unsigned _Uint, std::size_t _Size>
-                                               ^~~~~~
-/usr/include/c++/8/type_traits:1310:23: error: ‘_Size’ was not declared in this scope
-     struct extent<_Tp[_Size], _Uint>
-                       ^~~~~
-/usr/include/c++/8/type_traits:1310:36: error: template argument 1 is invalid
-     struct extent<_Tp[_Size], _Uint>
-                                    ^
-/usr/include/c++/8/type_traits:1311:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t,
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1311:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1311:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t,
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1311:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1312:24: error: ‘_Size’ was not declared in this scope
-           _Uint == 0 ? _Size : extent<_Tp,
-                        ^~~~~
-/usr/include/c++/8/type_traits:1313:28: error: template argument 1 is invalid
-           _Uint - 1>::value>
-                            ^
-/usr/include/c++/8/type_traits:1313:28: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1318:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t,
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1318:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1318:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t,
-                                     ^~~~~~
-/usr/include/c++/8/type_traits:1318:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/move.h:55,
-                 from /usr/include/c++/8/bits/nested_exception.h:40,
-                 from /usr/include/c++/8/exception:144,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/type_traits:1320:31: error: template argument 1 is invalid
-              _Uint - 1>::value>
-                               ^
-/usr/include/c++/8/type_traits:1320:31: note: invalid template non-type parameter
-/usr/include/c++/8/type_traits:1748:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Size>
-                               ^~~~~~
-/usr/include/c++/8/type_traits:1749:30: error: ‘_Size’ was not declared in this scope
-     struct remove_extent<_Tp[_Size]>
-                              ^~~~~
-/usr/include/c++/8/type_traits:1749:36: error: template argument 1 is invalid
-     struct remove_extent<_Tp[_Size]>
-                                    ^
-/usr/include/c++/8/type_traits:1761:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Size>
-                               ^~~~~~
-/usr/include/c++/8/type_traits:1762:35: error: ‘_Size’ was not declared in this scope
-     struct remove_all_extents<_Tp[_Size]>
-                                   ^~~~~
-/usr/include/c++/8/type_traits:1762:41: error: template argument 1 is invalid
-     struct remove_all_extents<_Tp[_Size]>
-                                         ^
-/usr/include/c++/8/type_traits:1820:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Len>
-                 ^~~~~~
-/usr/include/c++/8/type_traits:1825:23: error: ‘_Len’ was not declared in this scope
-  unsigned char __data[_Len];
-                       ^~~~
-/usr/include/c++/8/type_traits:1840:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Len, std::size_t _Align =
-                 ^~~~~~
-/usr/include/c++/8/type_traits:1840:35: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Len, std::size_t _Align =
-                                   ^~~~~~
-/usr/include/c++/8/type_traits:1841:48: error: ‘_Len’ was not declared in this scope
-     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
-                                                ^~~~
-/usr/include/c++/8/type_traits:1841:52: error: template argument 1 is invalid
-     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
-                                                    ^
-/usr/include/c++/8/type_traits:1846:23: error: ‘_Len’ was not declared in this scope
-  unsigned char __data[_Len];
-                       ^~~~
-/usr/include/c++/8/type_traits:1847:37: error: ‘_Align’ was not declared in this scope
-  struct __attribute__((__aligned__((_Align)))) { } __align;
-                                     ^~~~~~
-In file included from /usr/include/c++/8/bits/stl_algobase.h:62,
-                 from /usr/include/c++/8/bits/char_traits.h:39,
-                 from /usr/include/c++/8/ios:40,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/type_traits.h:162:35: error: ‘bool __gnu_cxx::__is_null_pointer’ redeclared as different kind of symbol
-   __is_null_pointer(std::nullptr_t)
-                                   ^
-/usr/include/c++/8/ext/type_traits.h:157:5: note: previous declaration ‘template<class _Type> bool __gnu_cxx::__is_null_pointer(_Type)’
-     __is_null_pointer(_Type)
-     ^~~~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/type_traits.h:162:26: error: ‘nullptr_t’ is not a member of ‘std’
-   __is_null_pointer(std::nullptr_t)
-                          ^~~~~~~~~
-/usr/include/c++/8/ext/type_traits.h:162:26: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/c++/8/bits/stl_algobase.h:64,
-                 from /usr/include/c++/8/bits/char_traits.h:39,
-                 from /usr/include/c++/8/ios:40,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/stl_pair.h:86:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t...>
-                 ^~~~~~
-/usr/include/c++/8/bits/stl_pair.h:434:41: error: ‘std::size_t’ has not been declared
-       template<typename... _Args1, std::size_t... _Indexes1,
-                                         ^~~~~~
-/usr/include/c++/8/bits/stl_pair.h:435:41: error: ‘std::size_t’ has not been declared
-                typename... _Args2, std::size_t... _Indexes2>
-                                         ^~~~~~
-/usr/include/c++/8/bits/stl_pair.h:437:27: error: ‘_Indexes1’ was not declared in this scope
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                           ^~~~~~~~~
-/usr/include/c++/8/bits/stl_pair.h:437:27: note: suggested alternative: ‘_Index_tuple’
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                           ^~~~~~~~~
-                           _Index_tuple
-/usr/include/c++/8/bits/stl_pair.h:437:36: error: expected parameter pack before ‘...’
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                    ^~~
-/usr/include/c++/8/bits/stl_pair.h:437:39: error: template argument 1 is invalid
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                       ^
-/usr/include/c++/8/bits/stl_pair.h:437:55: error: ‘_Indexes2’ was not declared in this scope
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                                       ^~~~~~~~~
-/usr/include/c++/8/bits/stl_pair.h:437:55: note: suggested alternative: ‘_Index_tuple’
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                                       ^~~~~~~~~
-                                                       _Index_tuple
-/usr/include/c++/8/bits/stl_pair.h:437:64: error: expected parameter pack before ‘...’
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                                                ^~~
-/usr/include/c++/8/bits/stl_pair.h:437:67: error: template argument 1 is invalid
-              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
-                                                                   ^
-In file included from /usr/include/c++/8/ios:40,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/char_traits.h:108:66: error: ‘std::size_t’ has not been declared
-       compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
-                                                                  ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:110:40: error: ‘size_t’ in namespace ‘std’ does not name a type
-       static _GLIBCXX14_CONSTEXPR std::size_t
-                                        ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:114:39: error: ‘std::size_t’ has not been declared
-       find(const char_type* __s, std::size_t __n, const char_type& __a);
-                                       ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:117:57: error: ‘std::size_t’ has not been declared
-       move(char_type* __s1, const char_type* __s2, std::size_t __n);
-                                                         ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:120:57: error: ‘std::size_t’ has not been declared
-       copy(char_type* __s1, const char_type* __s2, std::size_t __n);
-                                                         ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:123:35: error: ‘std::size_t’ has not been declared
-       assign(char_type* __s, std::size_t __n, char_type __a);
-                                   ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:149:64: error: ‘std::size_t’ has not been declared
-     compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
-                                                                ^~~~~~
-/usr/include/c++/8/bits/char_traits.h: In static member function ‘static constexpr int __gnu_cxx::char_traits<_CharT>::compare(const char_type*, const char_type*, int)’:
-/usr/include/c++/8/bits/char_traits.h:151:17: error: ‘size_t’ is not a member of ‘std’
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                 ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:151:17: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/ios:40,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/char_traits.h:151:33: error: ‘__i’ was not declared in this scope
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                                 ^~~
-/usr/include/c++/8/bits/char_traits.h:151:33: note: suggested alternative: ‘__n’
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                                 ^~~
-                                 __n
-/usr/include/c++/8/bits/char_traits.h: At global scope:
-/usr/include/c++/8/bits/char_traits.h:160:31: error: ‘size_t’ in namespace ‘std’ does not name a type
-     _GLIBCXX14_CONSTEXPR std::size_t
-                               ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:173:37: error: ‘std::size_t’ has not been declared
-     find(const char_type* __s, std::size_t __n, const char_type& __a)
-                                     ^~~~~~
-/usr/include/c++/8/bits/char_traits.h: In static member function ‘static constexpr const char_type* __gnu_cxx::char_traits<_CharT>::find(const char_type*, int, const char_type&)’:
-/usr/include/c++/8/bits/char_traits.h:175:17: error: ‘size_t’ is not a member of ‘std’
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                 ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:175:17: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/ios:40,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/char_traits.h:175:33: error: ‘__i’ was not declared in this scope
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                                 ^~~
-/usr/include/c++/8/bits/char_traits.h:175:33: note: suggested alternative: ‘__s’
-       for (std::size_t __i = 0; __i < __n; ++__i)
-                                 ^~~
-                                 __s
-/usr/include/c++/8/bits/char_traits.h: At global scope:
-/usr/include/c++/8/bits/char_traits.h:184:55: error: ‘std::size_t’ has not been declared
-     move(char_type* __s1, const char_type* __s2, std::size_t __n)
-                                                       ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:195:55: error: ‘std::size_t’ has not been declared
-     copy(char_type* __s1, const char_type* __s2, std::size_t __n)
-                                                       ^~~~~~
-/usr/include/c++/8/bits/char_traits.h:205:33: error: ‘std::size_t’ has not been declared
-     assign(char_type* __s, std::size_t __n, char_type __a)
-                                 ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/c++/8/bits/c++allocator.h:33,
-                 from /usr/include/c++/8/bits/allocator.h:46,
-                 from /usr/include/c++/8/string:41,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/new_allocator.h:44:14: error: ‘std::size_t’ has not been declared
-   using std::size_t;
-              ^~~~~~
-/usr/include/c++/8/ext/new_allocator.h:45:14: error: ‘std::ptrdiff_t’ has not been declared
-   using std::ptrdiff_t;
-              ^~~~~~~~~
-In file included from /usr/include/c++/8/string:44,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/ostream_insert.h:45:26: error: ‘streamsize’ has not been declared
-       const _CharT* __s, streamsize __n)
-                          ^~~~~~~~~~
-/usr/include/c++/8/bits/ostream_insert.h: In function ‘void std::__ostream_write(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)’:
-/usr/include/c++/8/bits/ostream_insert.h:50:13: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       const streamsize __put = __out.rdbuf()->sputn(__s, __n);
-             ^~~~~~~~~~
-             streambuf
-/usr/include/c++/8/bits/ostream_insert.h:51:11: error: ‘__put’ was not declared in this scope
-       if (__put != __n)
-           ^~~~~
-/usr/include/c++/8/bits/ostream_insert.h:51:11: note: suggested alternative: ‘__out’
-       if (__put != __n)
-           ^~~~~
-           __out
-/usr/include/c++/8/bits/ostream_insert.h: At global scope:
-/usr/include/c++/8/bits/ostream_insert.h:57:59: error: ‘streamsize’ has not been declared
-     __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
-                                                           ^~~~~~~~~~
-/usr/include/c++/8/bits/ostream_insert.h:77:27: error: ‘streamsize’ has not been declared
-        const _CharT* __s, streamsize __n)
-                           ^~~~~~~~~~
-/usr/include/c++/8/bits/ostream_insert.h: In function ‘std::basic_ostream<_CharT, _Traits>& std::__ostream_insert(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)’:
-/usr/include/c++/8/bits/ostream_insert.h:87:14: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-        const streamsize __w = __out.width();
-              ^~~~~~~~~~
-              streambuf
-/usr/include/c++/8/bits/ostream_insert.h:88:12: error: ‘__w’ was not declared in this scope
-        if (__w > __n)
-            ^~~
-/usr/include/c++/8/bits/ostream_insert.h:88:12: note: suggested alternative: ‘__s’
-        if (__w > __n)
-            ^~~
-            __s
-/usr/include/c++/8/bits/ostream_insert.h: At global scope:
-/usr/include/c++/8/bits/ostream_insert.h:118:68: error: ‘streamsize’ has not been declared
-   extern template ostream& __ostream_insert(ostream&, const char*, streamsize);
-                                                                    ^~~~~~~~~~
-/usr/include/c++/8/bits/ostream_insert.h:122:11: error: ‘streamsize’ has not been declared
-           streamsize);
-           ^~~~~~~~~~
-In file included from /usr/include/c++/8/ext/alloc_traits.h:36,
-                 from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/alloc_traits.h:404:36: error: ‘ptrdiff_t’ in namespace ‘std’ does not name a type
-       using difference_type = std::ptrdiff_t;
-                                    ^~~~~~~~~
-/usr/include/c++/8/bits/alloc_traits.h:407:30: error: ‘size_t’ in namespace ‘std’ does not name a type
-       using size_type = std::size_t;
-                              ^~~~~~
-/usr/include/c++/8/bits/alloc_traits.h:407:25: note: suggested alternative: ‘time_put’
-       using size_type = std::size_t;
-                         ^~~
-                         time_put
-/usr/include/c++/8/bits/alloc_traits.h:435:37: error: ‘size_type’ has not been declared
-       allocate(allocator_type& __a, size_type __n)
-                                     ^~~~~~~~~
-/usr/include/c++/8/bits/alloc_traits.h:449:37: error: ‘size_type’ has not been declared
-       allocate(allocator_type& __a, size_type __n, const_void_pointer __hint)
-                                     ^~~~~~~~~
-/usr/include/c++/8/bits/alloc_traits.h:461:52: error: ‘size_type’ has not been declared
-       deallocate(allocator_type& __a, pointer __p, size_type __n)
-                                                    ^~~~~~~~~
-/usr/include/c++/8/bits/alloc_traits.h:494:14: error: ‘size_type’ does not name a type; did you mean ‘true_type’?
-       static size_type
-              ^~~~~~~~~
-              true_type
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:55:51: error: ‘std::size_t’ has not been declared
-     const char* __name, const _CharT* __str, std::size_t* __idx,
-                                                   ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:48: error: ‘std::size_t’ has not been declared
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-                                                ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:100:31: error: ‘std::size_t’ has not been declared
-      __builtin_va_list), std::size_t __n,
-                               ^~~~~~
-In file included from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<char>, char>’:
-/usr/include/c++/8/bits/basic_string.h:80:24:   required from ‘class std::__cxx11::basic_string<char>’
-/usr/include/c++/8/bits/basic_string.h:6411:68:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<char> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<char> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<char>, char>::_Base_type {aka std::allocator_traits<std::allocator<char> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<char>, char>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<char> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In function ‘int std::__cxx11::stoi(const string&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6412:19: error: no matching function for call to ‘__stoa<long int, int>(long int (*)(const char*, char**, int) throw (), const char [5], const char*, size_t*&, int&)’
-      __idx, __base); }
-                   ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6412:6: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-      __idx, __base); }
-      ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long int std::__cxx11::stol(const string&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6417:22: error: no matching function for call to ‘__stoa(long int (*)(const char*, char**, int) throw (), const char [5], const char*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6417:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long unsigned int std::__cxx11::stoul(const string&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6422:22: error: no matching function for call to ‘__stoa(long unsigned int (*)(const char*, char**, int) throw (), const char [6], const char*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6422:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long long int std::__cxx11::stoll(const string&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6427:22: error: no matching function for call to ‘__stoa(long long int (*)(const char*, char**, int) throw (), const char [6], const char*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6427:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long long unsigned int std::__cxx11::stoull(const string&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6432:22: error: no matching function for call to ‘__stoa(long long unsigned int (*)(const char*, char**, int) throw (), const char [7], const char*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6432:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘float std::__cxx11::stof(const string&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6437:72: error: no matching function for call to ‘__stoa(float (*)(const char*, char**) throw (), const char [5], const char*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::strtof, "stof", __str.c_str(), __idx); }
-                                                                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6437:67: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::strtof, "stof", __str.c_str(), __idx); }
-                                                                   ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘double std::__cxx11::stod(const string&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6441:72: error: no matching function for call to ‘__stoa(double (*)(const char*, char**) throw (), const char [5], const char*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::strtod, "stod", __str.c_str(), __idx); }
-                                                                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6441:67: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::strtod, "stod", __str.c_str(), __idx); }
-                                                                   ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long double std::__cxx11::stold(const string&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6445:74: error: no matching function for call to ‘__stoa(long double (*)(const char*, char**) throw (), const char [6], const char*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::strtold, "stold", __str.c_str(), __idx); }
-                                                                          ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6445:69: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::strtold, "stold", __str.c_str(), __idx); }
-                                                                     ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(int)’:
-/usr/include/c++/8/bits/basic_string.h:6455:20: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [3], int&)’
-         "%d", __val); }
-                    ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6455:20: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%d", __val); }
-                    ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6461:20: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [3], unsigned int&)’
-         "%u", __val); }
-                    ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6461:20: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%u", __val); }
-                    ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(long int)’:
-/usr/include/c++/8/bits/basic_string.h:6466:21: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [4], long int&)’
-         "%ld", __val); }
-                     ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6466:21: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%ld", __val); }
-                     ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(long unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6472:21: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [4], long unsigned int&)’
-         "%lu", __val); }
-                     ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6472:21: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%lu", __val); }
-                     ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(long long int)’:
-/usr/include/c++/8/bits/basic_string.h:6478:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [5], long long int&)’
-         "%lld", __val); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6478:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%lld", __val); }
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(long long unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6484:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [5], long long unsigned int&)’
-         "%llu", __val); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6484:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%llu", __val); }
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(float)’:
-/usr/include/c++/8/bits/basic_string.h:6492:20: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [3], float&)’
-         "%f", __val);
-                    ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6492:20: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%f", __val);
-                    ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(double)’:
-/usr/include/c++/8/bits/basic_string.h:6501:20: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [3], double&)’
-         "%f", __val);
-                    ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6501:20: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%f", __val);
-                    ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::string std::__cxx11::to_string(long double)’:
-/usr/include/c++/8/bits/basic_string.h:6510:21: error: no matching function for call to ‘__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [4], long double&)’
-         "%Lf", __val);
-                     ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6510:21: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-         "%Lf", __val);
-                     ^
-In file included from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<wchar_t>, wchar_t>’:
-/usr/include/c++/8/bits/basic_string.h:80:24:   required from ‘class std::__cxx11::basic_string<wchar_t>’
-/usr/include/c++/8/bits/basic_string.h:6517:68:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<wchar_t> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<wchar_t> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<wchar_t>, wchar_t>::_Base_type {aka std::allocator_traits<std::allocator<wchar_t> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<wchar_t>, wchar_t>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<wchar_t> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In function ‘int std::__cxx11::stoi(const wstring&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6518:19: error: no matching function for call to ‘__stoa<long int, int>(long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [5], const wchar_t*, size_t*&, int&)’
-      __idx, __base); }
-                   ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6518:6: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-      __idx, __base); }
-      ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long int std::__cxx11::stol(const wstring&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6523:22: error: no matching function for call to ‘__stoa(long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [5], const wchar_t*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6523:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long unsigned int std::__cxx11::stoul(const wstring&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6528:22: error: no matching function for call to ‘__stoa(long unsigned int (*)(const wchar_t*, wchar_t**, int) throw (), const char [6], const wchar_t*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6528:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long long int std::__cxx11::stoll(const wstring&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6533:22: error: no matching function for call to ‘__stoa(long long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [6], const wchar_t*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6533:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long long unsigned int std::__cxx11::stoull(const wstring&, size_t*, int)’:
-/usr/include/c++/8/bits/basic_string.h:6538:22: error: no matching function for call to ‘__stoa(long long unsigned int (*)(const wchar_t*, wchar_t**, int) throw (), const char [7], const wchar_t*, size_t*&, int&)’
-         __idx, __base); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6538:9: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-         __idx, __base); }
-         ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘float std::__cxx11::stof(const wstring&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6543:72: error: no matching function for call to ‘__stoa(float (*)(const wchar_t*, wchar_t**) throw (), const char [5], const wchar_t*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::wcstof, "stof", __str.c_str(), __idx); }
-                                                                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6543:67: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::wcstof, "stof", __str.c_str(), __idx); }
-                                                                   ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘double std::__cxx11::stod(const wstring&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6547:72: error: no matching function for call to ‘__stoa(double (*)(const wchar_t*, wchar_t**) throw (), const char [5], const wchar_t*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::wcstod, "stod", __str.c_str(), __idx); }
-                                                                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6547:67: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::wcstod, "stod", __str.c_str(), __idx); }
-                                                                   ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘long double std::__cxx11::stold(const wstring&, size_t*)’:
-/usr/include/c++/8/bits/basic_string.h:6551:74: error: no matching function for call to ‘__stoa(long double (*)(const wchar_t*, wchar_t**) throw (), const char [6], const wchar_t*, size_t*&)’
-   { return __gnu_cxx::__stoa(&std::wcstold, "stold", __str.c_str(), __idx); }
-                                                                          ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:54:5: note: candidate: ‘template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)’
-     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
-     ^~~~~~
-/usr/include/c++/8/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6551:69: note:   cannot convert ‘__idx’ (type ‘size_t*’ {aka ‘long unsigned int*’}) to type ‘int*’
-   { return __gnu_cxx::__stoa(&std::wcstold, "stold", __str.c_str(), __idx); }
-                                                                     ^~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(int)’:
-/usr/include/c++/8/bits/basic_string.h:6558:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [3], int&)’
-          L"%d", __val); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6558:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%d", __val); }
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6564:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [3], unsigned int&)’
-          L"%u", __val); }
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6564:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%u", __val); }
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(long int)’:
-/usr/include/c++/8/bits/basic_string.h:6569:23: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [4], long int&)’
-          L"%ld", __val); }
-                       ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6569:23: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%ld", __val); }
-                       ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(long unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6575:23: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [4], long unsigned int&)’
-          L"%lu", __val); }
-                       ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6575:23: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%lu", __val); }
-                       ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(long long int)’:
-/usr/include/c++/8/bits/basic_string.h:6581:24: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [5], long long int&)’
-          L"%lld", __val); }
-                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6581:24: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%lld", __val); }
-                        ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(long long unsigned int)’:
-/usr/include/c++/8/bits/basic_string.h:6587:24: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [5], long long unsigned int&)’
-          L"%llu", __val); }
-                        ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6587:24: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%llu", __val); }
-                        ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(float)’:
-/usr/include/c++/8/bits/basic_string.h:6595:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [3], float&)’
-          L"%f", __val);
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6595:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%f", __val);
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(double)’:
-/usr/include/c++/8/bits/basic_string.h:6604:22: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [3], double&)’
-          L"%f", __val);
-                      ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6604:22: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%f", __val);
-                      ^
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::wstring std::__cxx11::to_wstring(long double)’:
-/usr/include/c++/8/bits/basic_string.h:6613:23: error: no matching function for call to ‘__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [4], long double&)’
-          L"%Lf", __val);
-                       ^
-In file included from /usr/include/c++/8/bits/basic_string.h:6400,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/string_conversions.h:99:5: note: candidate: ‘template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)’
-     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
-     ^~~~~~~~~~~~
-/usr/include/c++/8/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6613:23: note:   mismatched types ‘int’ and ‘size_t’ {aka ‘long unsigned int’}
-          L"%Lf", __val);
-                       ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In member function ‘size_t std::hash<std::__cxx11::basic_string<char> >::operator()(const string&) const’:
-/usr/include/c++/8/bits/basic_string.h:6642:54: error: ‘const string’ {aka ‘const class std::__cxx11::basic_string<char>’} has no member named ‘length’
-       { return std::_Hash_impl::hash(__s.data(), __s.length()); }
-                                                      ^~~~~~
-/usr/include/c++/8/bits/basic_string.h: In member function ‘size_t std::hash<std::__cxx11::basic_string<wchar_t> >::operator()(const wstring&) const’:
-/usr/include/c++/8/bits/basic_string.h:6658:42: error: ‘const wstring’ {aka ‘const class std::__cxx11::basic_string<wchar_t>’} has no member named ‘length’
-                                      __s.length() * sizeof(wchar_t)); }
-                                          ^~~~~~
-In file included from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<char16_t>, char16_t>’:
-/usr/include/c++/8/bits/basic_string.h:80:24:   required from ‘class std::__cxx11::basic_string<char16_t>’
-/usr/include/c++/8/bits/basic_string.h:6675:41:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<char16_t> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<char16_t> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<char16_t>, char16_t>::_Base_type {aka std::allocator_traits<std::allocator<char16_t> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<char16_t>, char16_t>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<char16_t> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In member function ‘size_t std::hash<std::__cxx11::basic_string<char16_t> >::operator()(const u16string&) const’:
-/usr/include/c++/8/bits/basic_string.h:6676:42: error: ‘const u16string’ {aka ‘const class std::__cxx11::basic_string<char16_t>’} has no member named ‘length’
-                                      __s.length() * sizeof(char16_t)); }
-                                          ^~~~~~
-In file included from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<char32_t>, char32_t>’:
-/usr/include/c++/8/bits/basic_string.h:80:24:   required from ‘class std::__cxx11::basic_string<char32_t>’
-/usr/include/c++/8/bits/basic_string.h:6690:41:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<char32_t> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<char32_t> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<char32_t>, char32_t>::_Base_type {aka std::allocator_traits<std::allocator<char32_t> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<char32_t>, char32_t>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<char32_t> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In member function ‘size_t std::hash<std::__cxx11::basic_string<char32_t> >::operator()(const u32string&) const’:
-/usr/include/c++/8/bits/basic_string.h:6691:42: error: ‘const u32string’ {aka ‘const class std::__cxx11::basic_string<char32_t>’} has no member named ‘length’
-                                      __s.length() * sizeof(char32_t)); }
-                                          ^~~~~~
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::basic_string<char> std::literals::string_literals::operator""s(const char*, size_t)’:
-/usr/include/c++/8/bits/basic_string.h:6712:45: error: no matching function for call to ‘std::__cxx11::basic_string<char>::basic_string(<brace-enclosed initializer list>)’
-     { return basic_string<char>{__str, __len}; }
-                                             ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6712:45: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const char*’ and ‘long unsigned int’)
-     { return basic_string<char>{__str, __len}; }
-                                             ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const char*’ to ‘std::initializer_list<char>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::basic_string<wchar_t> std::literals::string_literals::operator""s(const wchar_t*, size_t)’:
-/usr/include/c++/8/bits/basic_string.h:6718:48: error: no matching function for call to ‘std::__cxx11::basic_string<wchar_t>::basic_string(<brace-enclosed initializer list>)’
-     { return basic_string<wchar_t>{__str, __len}; }
-                                                ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6718:48: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const wchar_t*’ and ‘long unsigned int’)
-     { return basic_string<wchar_t>{__str, __len}; }
-                                                ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<wchar_t>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<wchar_t>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const wchar_t*’ to ‘std::initializer_list<wchar_t>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<wchar_t>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::basic_string<char16_t> std::literals::string_literals::operator""s(const char16_t*, size_t)’:
-/usr/include/c++/8/bits/basic_string.h:6725:49: error: no matching function for call to ‘std::__cxx11::basic_string<char16_t>::basic_string(<brace-enclosed initializer list>)’
-     { return basic_string<char16_t>{__str, __len}; }
-                                                 ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6725:49: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const char16_t*’ and ‘long unsigned int’)
-     { return basic_string<char16_t>{__str, __len}; }
-                                                 ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const char16_t*’ to ‘std::initializer_list<char16_t>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In function ‘std::__cxx11::basic_string<char32_t> std::literals::string_literals::operator""s(const char32_t*, size_t)’:
-/usr/include/c++/8/bits/basic_string.h:6730:49: error: no matching function for call to ‘std::__cxx11::basic_string<char32_t>::basic_string(<brace-enclosed initializer list>)’
-     { return basic_string<char32_t>{__str, __len}; }
-                                                 ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:6730:49: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const char32_t*’ and ‘long unsigned int’)
-     { return basic_string<char32_t>{__str, __len}; }
-                                                 ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char32_t>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char32_t>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const char32_t*’ to ‘std::initializer_list<char32_t>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘size_t’ {aka ‘long unsigned int’} to ‘const std::allocator<char32_t>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/c++/8/string:53,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.tcc: In function ‘std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)’:
-/usr/include/c++/8/bits/basic_string.tcc:1487:14: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-        const streamsize __w = __in.width();
-              ^~~~~~~~~~
-              streambuf
-/usr/include/c++/8/bits/basic_string.tcc:1488:32: error: ‘__w’ was not declared in this scope
-        const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
-                                ^~~
-/usr/include/c++/8/bits/basic_string.tcc:1488:32: note: suggested alternative: ‘__n’
-        const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
-                                ^~~
-                                __n
-In file included from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/ios_base.h: At global scope:
-/usr/include/c++/8/bits/ios_base.h:522:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize  _M_precision;
-     ^~~~~~~~~~
-     streampos
-/usr/include/c++/8/bits/ios_base.h:523:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize  _M_width;
-     ^~~~~~~~~~
-     streampos
-/usr/include/c++/8/bits/ios_base.h:690:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize
-     ^~~~~~~~~~
-     streampos
-/usr/include/c++/8/bits/ios_base.h:699:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize
-     ^~~~~~~~~~
-     streampos
-/usr/include/c++/8/bits/ios_base.h:713:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize
-     ^~~~~~~~~~
-     streampos
-/usr/include/c++/8/bits/ios_base.h:722:5: error: ‘streamsize’ does not name a type; did you mean ‘streampos’?
-     streamsize
-     ^~~~~~~~~~
-     streampos
-In file included from /usr/include/c++/8/ios:43,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/streambuf:52:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/streambuf:149:14: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       friend streamsize
-              ^~~~~~~~~~
-              streambuf
-/usr/include/c++/8/streambuf:246:33: error: ‘streamsize’ has not been declared
-       pubsetbuf(char_type* __s, streamsize __n)
-                                 ^~~~~~~~~~
-/usr/include/c++/8/streambuf:290:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/streambuf:363:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/streambuf:456:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/streambuf:598:26: error: ‘streamsize’ has not been declared
-       setbuf(char_type*, streamsize)
-                          ^~~~~~~~~~
-/usr/include/c++/8/streambuf:655:15: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       virtual streamsize
-               ^~~~~~~~~~
-               streambuf
-/usr/include/c++/8/streambuf:671:15: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       virtual streamsize
-               ^~~~~~~~~~
-               streambuf
-/usr/include/c++/8/streambuf:748:15: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       virtual streamsize
-               ^~~~~~~~~~
-               streambuf
-/usr/include/c++/8/streambuf:804:20: error: ‘streamsize’ has not been declared
-       __safe_gbump(streamsize __n) { _M_in_cur += __n; }
-                    ^~~~~~~~~~
-/usr/include/c++/8/streambuf:807:20: error: ‘streamsize’ has not been declared
-       __safe_pbump(streamsize __n) { _M_out_cur += __n; }
-                    ^~~~~~~~~~
-/usr/include/c++/8/streambuf:847:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/streambuf:852:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-In file included from /usr/include/c++/8/streambuf:862,
-                 from /usr/include/c++/8/ios:43,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/streambuf.tcc:44:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/bits/streambuf.tcc:78:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/bits/streambuf.tcc:115:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/bits/streambuf.tcc:138:12: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     inline streamsize
-            ^~~~~~~~~~
-            streambuf
-/usr/include/c++/8/bits/streambuf.tcc:151:5: error: ‘streamsize’ is not a template function
-     streamsize
-     ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:151:15: error: expected ‘;’ before ‘__copy_streambufs’
-     streamsize
-               ^
-               ;
-     __copy_streambufs(basic_streambuf<char>*,
-     ~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:155:5: error: ‘streamsize’ is not a template function
-     streamsize
-     ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:155:15: error: expected ‘;’ before ‘__copy_streambufs_eof’
-     streamsize
-               ^
-               ;
-     __copy_streambufs_eof(basic_streambuf<char>*,
-     ~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:162:5: error: ‘streamsize’ is not a template function
-     streamsize
-     ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:162:15: error: expected ‘;’ before ‘__copy_streambufs’
-     streamsize
-               ^
-               ;
-     __copy_streambufs(basic_streambuf<wchar_t>*,
-     ~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:166:5: error: ‘streamsize’ is not a template function
-     streamsize
-     ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf.tcc:166:15: error: expected ‘;’ before ‘__copy_streambufs_eof’
-     streamsize
-               ^
-               ;
-     __copy_streambufs_eof(basic_streambuf<wchar_t>*,
-     ~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/8/bits/locale_facets.h:48,
-                 from /usr/include/c++/8/bits/basic_ios.h:37,
-                 from /usr/include/c++/8/ios:44,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/streambuf_iterator.h:278:34: error: ‘streamsize’ has not been declared
-       _M_put(const _CharT* __ws, streamsize __len)
-                                  ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h: In function ‘typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> > >::__type std::__copy_move_a2(_CharT*, _CharT*, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> >)’:
-/usr/include/c++/8/bits/streambuf_iterator.h:312:13: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       const streamsize __num = __last - __first;
-             ^~~~~~~~~~
-             streambuf
-/usr/include/c++/8/bits/streambuf_iterator.h:313:11: error: ‘__num’ was not declared in this scope
-       if (__num > 0)
-           ^~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:313:11: note: suggested alternative: ‘enum’
-       if (__num > 0)
-           ^~~~~
-           enum
-/usr/include/c++/8/bits/streambuf_iterator.h: In function ‘typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> > >::__type std::__copy_move_a2(const _CharT*, const _CharT*, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> >)’:
-/usr/include/c++/8/bits/streambuf_iterator.h:324:13: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       const streamsize __num = __last - __first;
-             ^~~~~~~~~~
-             streambuf
-/usr/include/c++/8/bits/streambuf_iterator.h:325:11: error: ‘__num’ was not declared in this scope
-       if (__num > 0)
-           ^~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:325:11: note: suggested alternative: ‘enum’
-       if (__num > 0)
-           ^~~~~
-           enum
-/usr/include/c++/8/bits/streambuf_iterator.h: In function ‘typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, _CharT*>::__type std::__copy_move_a2(std::istreambuf_iterator<_CharT, std::char_traits<_CharT> >, std::istreambuf_iterator<_CharT, std::char_traits<_CharT> >, _CharT*)’:
-/usr/include/c++/8/bits/streambuf_iterator.h:347:14: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-        const streamsize __n = __sb->egptr() - __sb->gptr();
-              ^~~~~~~~~~
-              streambuf
-/usr/include/c++/8/bits/streambuf_iterator.h:348:12: error: ‘__n’ was not declared in this scope
-        if (__n > 1)
-            ^~~
-/usr/include/c++/8/bits/streambuf_iterator.h:348:12: note: suggested alternative: ‘__c’
-        if (__n > 1)
-            ^~~
-            __c
-/usr/include/c++/8/bits/streambuf_iterator.h: In function ‘typename __gnu_cxx::__enable_if<std::__is_char<_CharT2>::__value, std::istreambuf_iterator<_CharT> >::__type std::find(std::istreambuf_iterator<_CharT>, std::istreambuf_iterator<_CharT>, const _CharT2&)’:
-/usr/include/c++/8/bits/streambuf_iterator.h:385:8: error: ‘streamsize’ was not declared in this scope
-        streamsize __n = __sb->egptr() - __sb->gptr();
-        ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:385:8: note: suggested alternative: ‘streambuf’
-        streamsize __n = __sb->egptr() - __sb->gptr();
-        ^~~~~~~~~~
-        streambuf
-/usr/include/c++/8/bits/streambuf_iterator.h:386:12: error: ‘__n’ was not declared in this scope
-        if (__n > 1)
-            ^~~
-/usr/include/c++/8/bits/streambuf_iterator.h:386:12: note: suggested alternative: ‘__c’
-        if (__n > 1)
-            ^~~
-            __c
-/usr/include/c++/8/bits/streambuf_iterator.h: In function ‘typename __gnu_cxx::__enable_if<std::__is_char<_CharT2>::__value, void>::__type std::advance(std::istreambuf_iterator<_CharT>&, _Distance)’:
-/usr/include/c++/8/bits/streambuf_iterator.h:427:4: error: ‘streamsize’ was not declared in this scope
-    streamsize __size = __sb->egptr() - __sb->gptr();
-    ^~~~~~~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:427:4: note: suggested alternative: ‘streambuf’
-    streamsize __size = __sb->egptr() - __sb->gptr();
-    ^~~~~~~~~~
-    streambuf
-/usr/include/c++/8/bits/streambuf_iterator.h:428:8: error: ‘__size’ was not declared in this scope
-    if (__size > __n)
-        ^~~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:428:8: note: suggested alternative: ‘dysize’
-    if (__size > __n)
-        ^~~~~~
-        dysize
-/usr/include/c++/8/bits/streambuf_iterator.h:434:23: error: ‘__size’ was not declared in this scope
-    __sb->__safe_gbump(__size);
-                       ^~~~~~
-/usr/include/c++/8/bits/streambuf_iterator.h:434:23: note: suggested alternative: ‘dysize’
-    __sb->__safe_gbump(__size);
-                       ^~~~~~
-                       dysize
-In file included from /usr/include/c++/8/bits/basic_ios.h:37,
-                 from /usr/include/c++/8/ios:44,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/locale_facets.h: At global scope:
-/usr/include/c++/8/bits/locale_facets.h:99:29: error: ‘streamsize’ has not been declared
-       const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
-                             ^~~~~~~~~~
-/usr/include/c++/8/bits/locale_facets.h:99:50: error: ‘streamsize’ has not been declared
-       const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
-                                                  ^~~~~~~~~~
-In file included from /usr/include/c++/8/bits/basic_ios.h:37,
-                 from /usr/include/c++/8/ios:44,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/locale_facets.h:2488:32: error: ‘streamsize’ has not been declared
-       _M_pad(char_type __fill, streamsize __w, ios_base& __io,
-                                ^~~~~~~~~~
-In file included from /usr/include/c++/8/bits/locale_facets.h:2655,
-                 from /usr/include/c++/8/bits/basic_ios.h:37,
-                 from /usr/include/c++/8/ios:44,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘void std::__numpunct_cache<_CharT>::_M_cache(const std::locale&)’:
-/usr/include/c++/8/bits/locale_facets.tcc:88:27: error: ‘const string’ {aka ‘const class std::__cxx11::basic_string<char>’} has no member named ‘size’
-    _M_grouping_size = __g.size();
-                           ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc:90:8: error: ‘const string’ {aka ‘const class std::__cxx11::basic_string<char>’} has no member named ‘copy’
-    __g.copy(__grouping, _M_grouping_size);
-        ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘_InIter std::num_get<_CharT, _InIter>::_M_extract_float(_InIter, _InIter, std::ios_base&, std::ios_base::iostate&, std::__cxx11::string&) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:211:19: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘reserve’
-  __found_grouping.reserve(32);
-                   ^~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:296:28: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘size’
-       if (__found_grouping.size())
-                            ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc:319:28: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘size’
-       if (__found_grouping.size() && !__found_dec)
-                            ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc:355:28: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘size’
-       if (__found_grouping.size())
-                            ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘_InIter std::num_get<_CharT, _InIter>::_M_extract_int(_InIter, _InIter, std::ios_base&, std::ios_base::iostate&, _ValueT&) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:469:21: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘reserve’
-    __found_grouping.reserve(32);
-                     ^~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:555:23: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘size’
-  if (__found_grouping.size())
-                       ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc:568:56: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘size’
-  if ((!__sep_pos && !__found_zero && !__found_grouping.size())
-                                                        ^~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, float&) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:695:14: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘reserve’
-       __xtrc.reserve(32);
-              ^~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, double&) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:710:14: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘reserve’
-       __xtrc.reserve(32);
-              ^~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, long double&) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:742:14: error: ‘std::__cxx11::string’ {aka ‘class std::__cxx11::basic_string<char>’} has no member named ‘reserve’
-       __xtrc.reserve(32);
-              ^~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: At global scope:
-/usr/include/c++/8/bits/locale_facets.tcc:780:27: error: ‘streamsize’ has not been declared
-     _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
-                           ^~~~~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘_OutIter std::num_put<_CharT, _OutIter>::_M_insert_int(_OutIter, std::ios_base&, _CharT, _ValueT) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:921:8: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  const streamsize __w = __io.width();
-        ^~~~~~~~~~
-        streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:922:6: error: ‘__w’ was not declared in this scope
-  if (__w > static_cast<streamsize>(__len))
-      ^~~
-/usr/include/c++/8/bits/locale_facets.tcc:922:6: note: suggested alternative: ‘__u’
-  if (__w > static_cast<streamsize>(__len))
-      ^~~
-      __u
-/usr/include/c++/8/bits/locale_facets.tcc:922:24: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  if (__w > static_cast<streamsize>(__len))
-                        ^~~~~~~~~~
-                        streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:929:7: error: ‘class std::ios_base’ has no member named ‘width’
-  __io.width(0);
-       ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘_OutIter std::num_put<_CharT, _OutIter>::_M_insert_float(_OutIter, std::ios_base&, _CharT, char, _ValueT) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:984:8: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  const streamsize __prec = __io.precision() < 0 ? 6 : __io.precision();
-        ^~~~~~~~~~
-        streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1006:14: error: ‘__prec’ was not declared in this scope
-      __fbuf, __prec, __v);
-              ^~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1006:14: note: suggested alternative: ‘__pad’
-      __fbuf, __prec, __v);
-              ^~~~~~
-              __pad
-/usr/include/c++/8/bits/locale_facets.tcc:1018:18: error: ‘__prec’ was not declared in this scope
-          __fbuf, __prec, __v);
-                  ^~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1018:18: note: suggested alternative: ‘__pad’
-          __fbuf, __prec, __v);
-                  ^~~~~~
-                  __pad
-/usr/include/c++/8/bits/locale_facets.tcc:1071:6: error: ‘streamsize’ was not declared in this scope
-      streamsize __off = 0;
-      ^~~~~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1071:6: note: suggested alternative: ‘streambuf’
-      streamsize __off = 0;
-      ^~~~~~~~~~
-      streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1074:3: error: ‘__off’ was not declared in this scope
-   __off = 1;
-   ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1074:3: note: suggested alternative: ‘__or_’
-   __off = 1;
-   ^~~~~
-   __or_
-/usr/include/c++/8/bits/locale_facets.tcc:1080:45: error: ‘__off’ was not declared in this scope
-       __lc->_M_thousands_sep, __wp, __ws2 + __off,
-                                             ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1080:45: note: suggested alternative: ‘__or_’
-       __lc->_M_thousands_sep, __wp, __ws2 + __off,
-                                             ^~~~~
-                                             __or_
-/usr/include/c++/8/bits/locale_facets.tcc:1088:8: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  const streamsize __w = __io.width();
-        ^~~~~~~~~~
-        streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1089:6: error: ‘__w’ was not declared in this scope
-  if (__w > static_cast<streamsize>(__len))
-      ^~~
-/usr/include/c++/8/bits/locale_facets.tcc:1089:6: note: suggested alternative: ‘__p’
-  if (__w > static_cast<streamsize>(__len))
-      ^~~
-      __p
-/usr/include/c++/8/bits/locale_facets.tcc:1089:24: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  if (__w > static_cast<streamsize>(__len))
-                        ^~~~~~~~~~
-                        streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1096:7: error: ‘class std::ios_base’ has no member named ‘width’
-  __io.width(0);
-       ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: In member function ‘virtual _OutIter std::num_put<_CharT, _OutIter>::do_put(std::num_put<_CharT, _OutIter>::iter_type, std::ios_base&, std::num_put<_CharT, _OutIter>::char_type, bool) const’:
-/usr/include/c++/8/bits/locale_facets.tcc:1126:10: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-    const streamsize __w = __io.width();
-          ^~~~~~~~~~
-          streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1127:8: error: ‘__w’ was not declared in this scope
-    if (__w > static_cast<streamsize>(__len))
-        ^~~
-/usr/include/c++/8/bits/locale_facets.tcc:1127:8: note: suggested alternative: ‘__s’
-    if (__w > static_cast<streamsize>(__len))
-        ^~~
-        __s
-/usr/include/c++/8/bits/locale_facets.tcc:1127:26: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-    if (__w > static_cast<streamsize>(__len))
-                          ^~~~~~~~~~
-                          streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1129:14: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-        const streamsize __plen = __w - __len;
-              ^~~~~~~~~~
-              streambuf
-/usr/include/c++/8/bits/locale_facets.tcc:1132:10: error: ‘__plen’ was not declared in this scope
-        * __plen));
-          ^~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1132:10: note: suggested alternative: ‘__len’
-        * __plen));
-          ^~~~~~
-          __len
-/usr/include/c++/8/bits/locale_facets.tcc:1135:13: error: ‘class std::ios_base’ has no member named ‘width’
-        __io.width(0);
-             ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1149:9: error: ‘class std::ios_base’ has no member named ‘width’
-    __io.width(0);
-         ^~~~~
-/usr/include/c++/8/bits/locale_facets.tcc: At global scope:
-/usr/include/c++/8/bits/locale_facets.tcc:1210:8: error: ‘streamsize’ has not been declared
-        streamsize __newlen, streamsize __oldlen)
-        ^~~~~~~~~~
-/usr/include/c++/8/bits/locale_facets.tcc:1210:29: error: ‘streamsize’ has not been declared
-        streamsize __newlen, streamsize __oldlen)
-                             ^~~~~~~~~~
-In file included from /usr/include/c++/8/istream:39,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ostream:311:38: error: ‘streamsize’ has not been declared
-       _M_write(const char_type* __s, streamsize __n)
-                                      ^~~~~~~~~~
-/usr/include/c++/8/ostream:335:35: error: ‘streamsize’ has not been declared
-       write(const char_type* __s, streamsize __n);
-                                   ^~~~~~~~~~
-/usr/include/c++/8/ostream: In member function ‘void std::basic_ostream<_CharT, _Traits>::_M_write(const char_type*, int)’:
-/usr/include/c++/8/ostream:313:8: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-  const streamsize __put = this->rdbuf()->sputn(__s, __n);
-        ^~~~~~~~~~
-        streambuf
-/usr/include/c++/8/ostream:314:6: error: ‘__put’ was not declared in this scope
-  if (__put != __n)
-      ^~~~~
-/usr/include/c++/8/ostream:314:6: note: suggested alternative: ‘put’
-  if (__put != __n)
-      ^~~~~
-      put
-/usr/include/c++/8/ostream: In function ‘std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const _CharT*)’:
-/usr/include/c++/8/ostream:545:17: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     static_cast<streamsize>(_Traits::length(__s)));
-                 ^~~~~~~~~~
-                 streambuf
-/usr/include/c++/8/ostream: In function ‘std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const char*)’:
-/usr/include/c++/8/ostream:562:17: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     static_cast<streamsize>(_Traits::length(__s)));
-                 ^~~~~~~~~~
-                 streambuf
-In file included from /usr/include/c++/8/ostream:693,
-                 from /usr/include/c++/8/istream:39,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/ostream.tcc: At global scope:
-/usr/include/c++/8/bits/ostream.tcc:183:30: error: ‘streamsize’ has not been declared
-     write(const _CharT* __s, streamsize __n)
-                              ^~~~~~~~~~
-In file included from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/istream:82:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize   _M_gcount;
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/istream:268:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/istream:343:27: error: ‘streamsize’ has not been declared
-       get(char_type* __s, streamsize __n, char_type __delim);
-                           ^~~~~~~~~~
-/usr/include/c++/8/istream:354:27: error: ‘streamsize’ has not been declared
-       get(char_type* __s, streamsize __n)
-                           ^~~~~~~~~~
-/usr/include/c++/8/istream:416:31: error: ‘streamsize’ has not been declared
-       getline(char_type* __s, streamsize __n, char_type __delim);
-                               ^~~~~~~~~~
-/usr/include/c++/8/istream:427:31: error: ‘streamsize’ has not been declared
-       getline(char_type* __s, streamsize __n)
-                               ^~~~~~~~~~
-/usr/include/c++/8/istream:451:7: error: expected ‘;’ at end of member declaration
-       ignore(streamsize __n, int_type __delim);
-       ^~~~~~
-             ;
-/usr/include/c++/8/istream:451:24: error: expected ‘)’ before ‘__n’
-       ignore(streamsize __n, int_type __delim);
-             ~          ^~~~
-                        )
-/usr/include/c++/8/istream:454:7: error: expected ‘;’ at end of member declaration
-       ignore(streamsize __n);
-       ^~~~~~
-             ;
-/usr/include/c++/8/istream:454:14: error: redeclaration of ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore’
-       ignore(streamsize __n);
-              ^~~~~~~~~~
-/usr/include/c++/8/istream:451:14: note: previous declaration ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore’
-       ignore(streamsize __n, int_type __delim);
-              ^~~~~~~~~~
-/usr/include/c++/8/istream:454:24: error: expected ‘)’ before ‘__n’
-       ignore(streamsize __n);
-             ~          ^~~~
-                        )
-/usr/include/c++/8/istream:457:14: error: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore()’ conflicts with a previous declaration
-       ignore();
-              ^
-/usr/include/c++/8/istream:451:14: note: previous declaration ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore’
-       ignore(streamsize __n, int_type __delim);
-              ^~~~~~~~~~
-/usr/include/c++/8/istream:486:28: error: ‘streamsize’ has not been declared
-       read(char_type* __s, streamsize __n);
-                            ^~~~~~~~~~
-/usr/include/c++/8/istream:504:7: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       streamsize
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/istream: In constructor ‘std::basic_istream<_CharT, _Traits>::basic_istream(std::basic_istream<_CharT, _Traits>::__streambuf_type*)’:
-/usr/include/c++/8/istream:94:9: error: class ‘std::basic_istream<_CharT, _Traits>’ does not have any field named ‘_M_gcount’
-       : _M_gcount(streamsize(0))
-         ^~~~~~~~~
-/usr/include/c++/8/istream:94:19: error: there are no arguments to ‘streamsize’ that depend on a template parameter, so a declaration of ‘streamsize’ must be available [-fpermissive]
-       : _M_gcount(streamsize(0))
-                   ^~~~~~~~~~
-/usr/include/c++/8/istream:94:19: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
-/usr/include/c++/8/istream: In destructor ‘virtual std::basic_istream<_CharT, _Traits>::~basic_istream()’:
-/usr/include/c++/8/istream:104:9: error: ‘_M_gcount’ was not declared in this scope
-       { _M_gcount = streamsize(0); }
-         ^~~~~~~~~
-/usr/include/c++/8/istream:104:9: note: suggested alternative: ‘_S_out’
-       { _M_gcount = streamsize(0); }
-         ^~~~~~~~~
-         _S_out
-/usr/include/c++/8/istream:104:21: error: there are no arguments to ‘streamsize’ that depend on a template parameter, so a declaration of ‘streamsize’ must be available [-fpermissive]
-       { _M_gcount = streamsize(0); }
-                     ^~~~~~~~~~
-/usr/include/c++/8/istream: In constructor ‘std::basic_istream<_CharT, _Traits>::basic_istream()’:
-/usr/include/c++/8/istream:607:9: error: class ‘std::basic_istream<_CharT, _Traits>’ does not have any field named ‘_M_gcount’
-       : _M_gcount(streamsize(0))
-         ^~~~~~~~~
-/usr/include/c++/8/istream:607:19: error: there are no arguments to ‘streamsize’ that depend on a template parameter, so a declaration of ‘streamsize’ must be available [-fpermissive]
-       : _M_gcount(streamsize(0))
-                   ^~~~~~~~~~
-/usr/include/c++/8/istream: In constructor ‘std::basic_istream<_CharT, _Traits>::basic_istream(std::basic_istream<_CharT, _Traits>&&)’:
-/usr/include/c++/8/istream:614:23: error: class ‘std::basic_istream<_CharT, _Traits>’ does not have any field named ‘_M_gcount’
-       : __ios_type(), _M_gcount(__rhs._M_gcount)
-                       ^~~~~~~~~
-/usr/include/c++/8/istream: In member function ‘void std::basic_istream<_CharT, _Traits>::swap(std::basic_istream<_CharT, _Traits>&)’:
-/usr/include/c++/8/istream:635:12: error: ‘_M_gcount’ was not declared in this scope
-  std::swap(_M_gcount, __rhs._M_gcount);
-            ^~~~~~~~~
-/usr/include/c++/8/istream:635:12: note: suggested alternative: ‘_S_out’
-  std::swap(_M_gcount, __rhs._M_gcount);
-            ^~~~~~~~~
-            _S_out
-/usr/include/c++/8/istream: At global scope:
-/usr/include/c++/8/istream:648:29: error: ‘streamsize’ has not been declared
-     getline(char_type* __s, streamsize __n, char_type __delim);
-                             ^~~~~~~~~~
-/usr/include/c++/8/istream:653:12: error: ‘std::basic_istream<char>& std::basic_istream<char>::ignore’ is not a static data member of ‘class std::basic_istream<char>’
-     ignore(streamsize __n);
-            ^~~~~~~~~~
-/usr/include/c++/8/istream:653:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/istream:653:12: note: suggested alternative: ‘streampos’
-     ignore(streamsize __n);
-            ^~~~~~~~~~
-            streampos
-/usr/include/c++/8/istream:658:12: error: ‘std::basic_istream<char>& std::basic_istream<char>::ignore’ is not a static data member of ‘class std::basic_istream<char>’
-     ignore(streamsize __n, int_type __delim);
-            ^~~~~~~~~~
-/usr/include/c++/8/istream:658:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/istream:658:12: note: suggested alternative: ‘streampos’
-     ignore(streamsize __n, int_type __delim);
-            ^~~~~~~~~~
-            streampos
-/usr/include/c++/8/istream:658:37: error: expected primary-expression before ‘__delim’
-     ignore(streamsize __n, int_type __delim);
-                                     ^~~~~~~
-/usr/include/c++/8/istream:658:44: error: expression list treated as compound expression in initializer [-fpermissive]
-     ignore(streamsize __n, int_type __delim);
-                                            ^
-/usr/include/c++/8/istream:664:29: error: ‘streamsize’ has not been declared
-     getline(char_type* __s, streamsize __n, char_type __delim);
-                             ^~~~~~~~~~
-/usr/include/c++/8/istream:669:12: error: ‘std::basic_istream<wchar_t>& std::basic_istream<wchar_t>::ignore’ is not a static data member of ‘class std::basic_istream<wchar_t>’
-     ignore(streamsize __n);
-            ^~~~~~~~~~
-/usr/include/c++/8/istream:669:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/istream:669:12: note: suggested alternative: ‘streampos’
-     ignore(streamsize __n);
-            ^~~~~~~~~~
-            streampos
-/usr/include/c++/8/istream:674:12: error: ‘std::basic_istream<wchar_t>& std::basic_istream<wchar_t>::ignore’ is not a static data member of ‘class std::basic_istream<wchar_t>’
-     ignore(streamsize __n, int_type __delim);
-            ^~~~~~~~~~
-/usr/include/c++/8/istream:674:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/istream:674:12: note: suggested alternative: ‘streampos’
-     ignore(streamsize __n, int_type __delim);
-            ^~~~~~~~~~
-            streampos
-/usr/include/c++/8/istream:674:37: error: expected primary-expression before ‘__delim’
-     ignore(streamsize __n, int_type __delim);
-                                     ^~~~~~~
-/usr/include/c++/8/istream:674:44: error: expression list treated as compound expression in initializer [-fpermissive]
-     ignore(streamsize __n, int_type __delim);
-                                            ^
-In file included from /usr/include/c++/8/istream:991,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>::int_type std::basic_istream<_CharT, _Traits>::get()’:
-/usr/include/c++/8/bits/istream.tcc:248:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:248:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::char_type&)’:
-/usr/include/c++/8/bits/istream.tcc:282:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:282:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: At global scope:
-/usr/include/c++/8/bits/istream.tcc:317:25: error: ‘streamsize’ has not been declared
-     get(char_type* __s, streamsize __n, char_type __delim)
-                         ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::char_type*, int, std::basic_istream<_CharT, _Traits>::char_type)’:
-/usr/include/c++/8/bits/istream.tcc:319:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:319:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::__streambuf_type&, std::basic_istream<_CharT, _Traits>::char_type)’:
-/usr/include/c++/8/bits/istream.tcc:366:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:366:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: At global scope:
-/usr/include/c++/8/bits/istream.tcc:408:29: error: ‘streamsize’ has not been declared
-     getline(char_type* __s, streamsize __n, char_type __delim)
-                             ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::getline(std::basic_istream<_CharT, _Traits>::char_type*, int, std::basic_istream<_CharT, _Traits>::char_type)’:
-/usr/include/c++/8/bits/istream.tcc:410:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:410:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: At global scope:
-/usr/include/c++/8/bits/istream.tcc:467:5: error: no declaration matches ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore()’
-     basic_istream<_CharT, _Traits>::
-     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/istream:451:14: note: candidate is: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore’
-       ignore(streamsize __n, int_type __delim);
-              ^~~~~~~~~~
-/usr/include/c++/8/istream:58:11: note: ‘class std::basic_istream<_CharT, _Traits>’ defined here
-     class basic_istream : virtual public basic_ios<_CharT, _Traits>
-           ^~~~~~~~~~~~~
-In file included from /usr/include/c++/8/istream:991,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/istream.tcc:501:12: error: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore’ is not a static data member of ‘class std::basic_istream<_CharT, _Traits>’
-     ignore(streamsize __n)
-            ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:501:12: error: template definition of non-template ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore’
-/usr/include/c++/8/bits/istream.tcc:501:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/bits/istream.tcc:501:12: note: suggested alternative: ‘streambuf’
-     ignore(streamsize __n)
-            ^~~~~~~~~~
-            streambuf
-/usr/include/c++/8/bits/istream.tcc:563:12: error: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore’ is not a static data member of ‘class std::basic_istream<_CharT, _Traits>’
-     ignore(streamsize __n, int_type __delim)
-            ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:563:12: error: template definition of non-template ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore’
-/usr/include/c++/8/bits/istream.tcc:563:12: error: ‘streamsize’ was not declared in this scope
-/usr/include/c++/8/bits/istream.tcc:563:12: note: suggested alternative: ‘streambuf’
-     ignore(streamsize __n, int_type __delim)
-            ^~~~~~~~~~
-            streambuf
-/usr/include/c++/8/bits/istream.tcc:563:37: error: expected primary-expression before ‘__delim’
-     ignore(streamsize __n, int_type __delim)
-                                     ^~~~~~~
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>::int_type std::basic_istream<_CharT, _Traits>::peek()’:
-/usr/include/c++/8/bits/istream.tcc:631:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:631:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: At global scope:
-/usr/include/c++/8/bits/istream.tcc:658:26: error: ‘streamsize’ has not been declared
-     read(char_type* __s, streamsize __n)
-                          ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::read(std::basic_istream<_CharT, _Traits>::char_type*, int)’:
-/usr/include/c++/8/bits/istream.tcc:660:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:660:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: At global scope:
-/usr/include/c++/8/bits/istream.tcc:685:5: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-     streamsize
-     ^~~~~~~~~~
-     streambuf
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::putback(std::basic_istream<_CharT, _Traits>::char_type)’:
-/usr/include/c++/8/bits/istream.tcc:723:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:723:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: In member function ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::unget()’:
-/usr/include/c++/8/bits/istream.tcc:758:7: error: ‘_M_gcount’ was not declared in this scope
-       _M_gcount = 0;
-       ^~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:758:7: note: suggested alternative: ‘_S_out’
-       _M_gcount = 0;
-       ^~~~~~~~~
-       _S_out
-/usr/include/c++/8/bits/istream.tcc: In function ‘std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT2*)’:
-/usr/include/c++/8/bits/istream.tcc:971:7: error: ‘streamsize’ was not declared in this scope
-       streamsize __extracted = 0;
-       ^~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:971:7: note: suggested alternative: ‘streambuf’
-       streamsize __extracted = 0;
-       ^~~~~~~~~~
-       streambuf
-/usr/include/c++/8/bits/istream.tcc:979:18: error: expected ‘;’ before ‘__num’
-        streamsize __num = __in.width();
-                  ^~~~~~
-                  ;
-/usr/include/c++/8/bits/istream.tcc:980:12: error: ‘__num’ was not declared in this scope
-        if (__num <= 0)
-            ^~~~~
-/usr/include/c++/8/bits/istream.tcc:980:12: note: suggested alternative: ‘enum’
-        if (__num <= 0)
-            ^~~~~
-            enum
-/usr/include/c++/8/bits/istream.tcc:981:49: error: type/value mismatch at argument 1 in template parameter list for ‘template<class _Value> struct __gnu_cxx::__numeric_traits’
-   __num = __gnu_cxx::__numeric_traits<streamsize>::__max;
-                                                 ^
-/usr/include/c++/8/bits/istream.tcc:981:49: note:   expected a type, got ‘streamsize’
-/usr/include/c++/8/bits/istream.tcc:989:15: error: ‘__extracted’ was not declared in this scope
-        while (__extracted < __num - 1
-               ^~~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:989:15: note: suggested alternative: ‘__traitor’
-        while (__extracted < __num - 1
-               ^~~~~~~~~~~
-               __traitor
-/usr/include/c++/8/bits/istream.tcc:989:29: error: ‘__num’ was not declared in this scope
-        while (__extracted < __num - 1
-                             ^~~~~
-/usr/include/c++/8/bits/istream.tcc:989:29: note: suggested alternative: ‘enum’
-        while (__extracted < __num - 1
-                             ^~~~~
-                             enum
-/usr/include/c++/8/bits/istream.tcc:1014:12: error: ‘__extracted’ was not declared in this scope
-       if (!__extracted)
-            ^~~~~~~~~~~
-/usr/include/c++/8/bits/istream.tcc:1014:12: note: suggested alternative: ‘__traitor’
-       if (!__extracted)
-            ^~~~~~~~~~~
-            __traitor
-In file included from gui-main.cpp:2:
-/usr/include/c++/8/sstream: At global scope:
-/usr/include/c++/8/sstream:211:15: error: ‘streamsize’ does not name a type; did you mean ‘streambuf’?
-       virtual streamsize
-               ^~~~~~~~~~
-               streambuf
-/usr/include/c++/8/sstream:244:30: error: ‘streamsize’ has not been declared
-       setbuf(char_type* __s, streamsize __n)
-                              ^~~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/utility:109:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:110:12: error: no default argument for ‘_Tp’
-     struct tuple_element;
-            ^~~~~~~~~~~~~
-/usr/include/c++/8/utility:113:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:114:54: error: ‘__i’ was not declared in this scope
-     using __tuple_element_t = typename tuple_element<__i, _Tp>::type;
-                                                      ^~~
-/usr/include/c++/8/utility:114:62: error: template argument 1 is invalid
-     using __tuple_element_t = typename tuple_element<__i, _Tp>::type;
-                                                              ^
-/usr/include/c++/8/utility:116:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:117:26: error: ‘__i’ was not declared in this scope
-     struct tuple_element<__i, const _Tp>
-                          ^~~
-/usr/include/c++/8/utility:117:40: error: template argument 1 is invalid
-     struct tuple_element<__i, const _Tp>
-                                        ^
-/usr/include/c++/8/utility:122:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:123:26: error: ‘__i’ was not declared in this scope
-     struct tuple_element<__i, volatile _Tp>
-                          ^~~
-/usr/include/c++/8/utility:123:43: error: template argument 1 is invalid
-     struct tuple_element<__i, volatile _Tp>
-                                           ^
-/usr/include/c++/8/utility:128:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:129:26: error: ‘__i’ was not declared in this scope
-     struct tuple_element<__i, const volatile _Tp>
-                          ^~~
-/usr/include/c++/8/utility:129:49: error: template argument 1 is invalid
-     struct tuple_element<__i, const volatile _Tp>
-                                                 ^
-/usr/include/c++/8/utility:137:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/utility:138:52: error: ‘__i’ was not declared in this scope
-     using tuple_element_t = typename tuple_element<__i, _Tp>::type;
-                                                    ^~~
-/usr/include/c++/8/utility:138:60: error: template argument 1 is invalid
-     using tuple_element_t = typename tuple_element<__i, _Tp>::type;
-                                                            ^
-/usr/include/c++/8/utility:151:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 2> { };
-                                     ^~~~~~
-/usr/include/c++/8/utility:151:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/utility:151:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, 2> { };
-                                     ^~~~~~
-/usr/include/c++/8/utility:151:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/utility:151:46: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, 2> { };
-                                              ^
-/usr/include/c++/8/utility:151:46: note: invalid template non-type parameter
-/usr/include/c++/8/utility:163:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int>
-                 ^~~~~~
-/usr/include/c++/8/utility:214:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, class _Tp1, class _Tp2>
-                 ^~~~~~
-/usr/include/c++/8/utility:215:38: error: ‘_Int’ was not declared in this scope
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                      ^~~~
-/usr/include/c++/8/utility:215:38: note: suggested alternative: ‘uint’
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                      ^~~~
-                                      uint
-/usr/include/c++/8/utility:215:64: error: template argument 1 is invalid
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                                                ^~
-/usr/include/c++/8/utility: In function ‘constexpr int& std::get(std::pair<_Tp1, _Tp2>&)’:
-/usr/include/c++/8/utility:217:25: error: ‘_Int’ was not declared in this scope
-     { return __pair_get<_Int>::__get(__in); }
-                         ^~~~
-/usr/include/c++/8/utility:217:25: note: suggested alternative: ‘uint’
-     { return __pair_get<_Int>::__get(__in); }
-                         ^~~~
-                         uint
-/usr/include/c++/8/utility:217:29: error: template argument 1 is invalid
-     { return __pair_get<_Int>::__get(__in); }
-                             ^
-/usr/include/c++/8/utility: At global scope:
-/usr/include/c++/8/utility:219:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, class _Tp1, class _Tp2>
-                 ^~~~~~
-/usr/include/c++/8/utility:220:38: error: ‘_Int’ was not declared in this scope
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                      ^~~~
-/usr/include/c++/8/utility:220:38: note: suggested alternative: ‘uint’
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                      ^~~~
-                                      uint
-/usr/include/c++/8/utility:220:64: error: template argument 1 is invalid
-     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                                                ^~
-/usr/include/c++/8/utility: In function ‘constexpr int&& std::get(std::pair<_Tp1, _Tp2>&&)’:
-/usr/include/c++/8/utility:222:25: error: ‘_Int’ was not declared in this scope
-     { return __pair_get<_Int>::__move_get(std::move(__in)); }
-                         ^~~~
-/usr/include/c++/8/utility:222:25: note: suggested alternative: ‘uint’
-     { return __pair_get<_Int>::__move_get(std::move(__in)); }
-                         ^~~~
-                         uint
-/usr/include/c++/8/utility:222:29: error: template argument 1 is invalid
-     { return __pair_get<_Int>::__move_get(std::move(__in)); }
-                             ^
-/usr/include/c++/8/utility: At global scope:
-/usr/include/c++/8/utility:224:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, class _Tp1, class _Tp2>
-                 ^~~~~~
-/usr/include/c++/8/utility:225:44: error: ‘_Int’ was not declared in this scope
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                            ^~~~
-/usr/include/c++/8/utility:225:44: note: suggested alternative: ‘uint’
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                            ^~~~
-                                            uint
-/usr/include/c++/8/utility:225:70: error: template argument 1 is invalid
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
-                                                                      ^~
-/usr/include/c++/8/utility: In function ‘constexpr const int& std::get(const std::pair<_Tp1, _Tp2>&)’:
-/usr/include/c++/8/utility:227:25: error: ‘_Int’ was not declared in this scope
-     { return __pair_get<_Int>::__const_get(__in); }
-                         ^~~~
-/usr/include/c++/8/utility:227:25: note: suggested alternative: ‘uint’
-     { return __pair_get<_Int>::__const_get(__in); }
-                         ^~~~
-                         uint
-/usr/include/c++/8/utility:227:29: error: template argument 1 is invalid
-     { return __pair_get<_Int>::__const_get(__in); }
-                             ^
-/usr/include/c++/8/utility: At global scope:
-/usr/include/c++/8/utility:229:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, class _Tp1, class _Tp2>
-                 ^~~~~~
-/usr/include/c++/8/utility:230:44: error: ‘_Int’ was not declared in this scope
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                            ^~~~
-/usr/include/c++/8/utility:230:44: note: suggested alternative: ‘uint’
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                            ^~~~
-                                            uint
-/usr/include/c++/8/utility:230:70: error: template argument 1 is invalid
-     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
-                                                                      ^~
-/usr/include/c++/8/utility: In function ‘constexpr const int&& std::get(const std::pair<_Tp1, _Tp2>&&)’:
-/usr/include/c++/8/utility:232:25: error: ‘_Int’ was not declared in this scope
-     { return __pair_get<_Int>::__const_move_get(std::move(__in)); }
-                         ^~~~
-/usr/include/c++/8/utility:232:25: note: suggested alternative: ‘uint’
-     { return __pair_get<_Int>::__const_move_get(std::move(__in)); }
-                         ^~~~
-                         uint
-/usr/include/c++/8/utility:232:29: error: template argument 1 is invalid
-     { return __pair_get<_Int>::__const_move_get(std::move(__in)); }
-                             ^
-/usr/include/c++/8/utility: At global scope:
-/usr/include/c++/8/utility:307:58: note: invalid template non-type parameter
-       using __type = _Index_tuple<__integer_pack(_Num)...>;
-                                                          ^
-In file included from /usr/include/c++/8/bits/stl_algo.h:62,
-                 from /usr/include/c++/8/algorithm:62,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/bits/stl_tempbuf.h: In function ‘std::pair<_Tp*, long int> std::get_temporary_buffer(ptrdiff_t)’:
-/usr/include/c++/8/bits/stl_tempbuf.h:95:20: error: too many arguments to function ‘void* operator new(long unsigned int)’
-        std::nothrow));
-                    ^
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:505:42: error: ‘size_t’ is not a member of ‘std’
- using qsizetype = QIntegerForSizeof<std::size_t>::Signed;
-                                          ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:505:42: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:505:42: error: ‘size_t’ is not a member of ‘std’
- using qsizetype = QIntegerForSizeof<std::size_t>::Signed;
-                                          ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:505:42: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:505:48: error: template argument 1 is invalid
- using qsizetype = QIntegerForSizeof<std::size_t>::Signed;
-                                                ^
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:609:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator==(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return lhs.isNull(); }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator< (QChar,     std::nullptr_t) Q_DECL_NOTHROW { return false; }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:611:46: error: declaration of ‘operator==’ as non-function
- Q_DECL_CONSTEXPR inline bool operator==(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return rhs.isNull(); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:611:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:611:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:611:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator==(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return rhs.isNull(); }
-                                                               ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:612:46: error: declaration of ‘operator<’ as non-function
- Q_DECL_CONSTEXPR inline bool operator< (std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !rhs.isNull(); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:612:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:612:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:612:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator< (std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !rhs.isNull(); }
-                                                               ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:614:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator!=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator==(lhs, nullptr); }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: In function ‘constexpr bool operator!=(QChar, int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:614:116: error: no matching function for call to ‘operator==(QChar&, std::nullptr_t)’
- Q_DECL_CONSTEXPR inline bool operator!=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator==(lhs, nullptr); }
-                                                                                                                    ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:600:30: note: candidate: ‘constexpr bool operator==(QChar, QChar)’
- Q_DECL_CONSTEXPR inline bool operator==(QChar c1, QChar c2) Q_DECL_NOTHROW { return c1.ucs == c2.ucs; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:600:30: note:   no known conversion for argument 2 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:609:30: note: candidate: ‘constexpr bool operator==(QChar, int)’
- Q_DECL_CONSTEXPR inline bool operator==(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return lhs.isNull(); }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:609:30: note:   no known conversion for argument 2 from ‘std::nullptr_t’ to ‘int’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:615:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator>=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator< (lhs, nullptr); }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: In function ‘constexpr bool operator>=(QChar, int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:615:116: error: no matching function for call to ‘operator<(QChar&, std::nullptr_t)’
- Q_DECL_CONSTEXPR inline bool operator>=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator< (lhs, nullptr); }
-                                                                                                                    ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note: candidate: ‘constexpr bool operator<(QChar, QChar)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar c1, QChar c2) Q_DECL_NOTHROW { return c1.ucs <  c2.ucs; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note:   no known conversion for argument 2 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note: candidate: ‘constexpr bool operator<(QChar, int)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar,     std::nullptr_t) Q_DECL_NOTHROW { return false; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note:   no known conversion for argument 2 from ‘std::nullptr_t’ to ‘int’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:616:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator> (QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return  operator< (nullptr, lhs); }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: In function ‘constexpr bool operator>(QChar, int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:616:116: error: no matching function for call to ‘operator<(std::nullptr_t, QChar&)’
- Q_DECL_CONSTEXPR inline bool operator> (QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return  operator< (nullptr, lhs); }
-                                                                                                                    ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note: candidate: ‘constexpr bool operator<(QChar, QChar)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar c1, QChar c2) Q_DECL_NOTHROW { return c1.ucs <  c2.ucs; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note:   no known conversion for argument 1 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note: candidate: ‘constexpr bool operator<(QChar, int)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar,     std::nullptr_t) Q_DECL_NOTHROW { return false; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note:   no known conversion for argument 1 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:617:57: error: ‘std::nullptr_t’ has not been declared
- Q_DECL_CONSTEXPR inline bool operator<=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator< (nullptr, lhs); }
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: In function ‘constexpr bool operator<=(QChar, int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:617:116: error: no matching function for call to ‘operator<(std::nullptr_t, QChar&)’
- Q_DECL_CONSTEXPR inline bool operator<=(QChar lhs, std::nullptr_t) Q_DECL_NOTHROW { return !operator< (nullptr, lhs); }
-                                                                                                                    ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note: candidate: ‘constexpr bool operator<(QChar, QChar)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar c1, QChar c2) Q_DECL_NOTHROW { return c1.ucs <  c2.ucs; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:601:30: note:   no known conversion for argument 1 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note: candidate: ‘constexpr bool operator<(QChar, int)’
- Q_DECL_CONSTEXPR inline bool operator< (QChar,     std::nullptr_t) Q_DECL_NOTHROW { return false; }
-                              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:610:30: note:   no known conversion for argument 1 from ‘std::nullptr_t’ to ‘QChar’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:619:46: error: declaration of ‘operator!=’ as non-function
- Q_DECL_CONSTEXPR inline bool operator!=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator==(nullptr, rhs); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:619:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:619:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:619:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator!=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator==(nullptr, rhs); }
-                                                               ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:620:46: error: declaration of ‘operator>=’ as non-function
- Q_DECL_CONSTEXPR inline bool operator>=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator< (nullptr, rhs); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:620:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:620:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:620:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator>=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator< (nullptr, rhs); }
-                                                               ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:621:46: error: declaration of ‘operator>’ as non-function
- Q_DECL_CONSTEXPR inline bool operator> (std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return  operator< (rhs, nullptr); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:621:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:621:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:621:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator> (std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return  operator< (rhs, nullptr); }
-                                                               ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:622:46: error: declaration of ‘operator<=’ as non-function
- Q_DECL_CONSTEXPR inline bool operator<=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator< (rhs, nullptr); }
-                                              ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:622:46: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:622:46: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:622:63: error: expected primary-expression before ‘rhs’
- Q_DECL_CONSTEXPR inline bool operator<=(std::nullptr_t, QChar rhs) Q_DECL_NOTHROW { return !operator< (rhs, nullptr); }
-                                                               ^~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h: In member function ‘std::__cxx11::string QByteArray::toStdString() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h:672:43: error: no matching function for call to ‘std::__cxx11::basic_string<char>::basic_string(const char*, int)’
- { return std::string(constData(), length()); }
-                                           ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h:672:43: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const char*’ and ‘int’)
- { return std::string(constData(), length()); }
-                                           ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const char*’ to ‘std::initializer_list<char>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h: In static member function ‘static QByteArray QByteArray::fromStdString(const string&)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qbytearray.h:675:37: error: ‘const string’ {aka ‘const class std::__cxx11::basic_string<char>’} has no member named ‘size’
- { return QByteArray(s.data(), int(s.size())); }
-                                     ^~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:53,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringalgorithms.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringalgorithms.h:58:54: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
- Q_REQUIRED_RESULT Q_CORE_EXPORT Q_DECL_PURE_FUNCTION qsizetype qustrlen(const ushort *str) Q_DECL_NOTHROW;
-                                                      ^~~~~~~~~
-                                                      iswctype
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:113:18: error: ‘ptrdiff_t’ in namespace ‘std’ does not name a type
-     typedef std::ptrdiff_t difference_type;
-                  ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:114:13: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     typedef qsizetype size_type;
-             ^~~~~~~~~
-             iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:142:29: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     static Q_DECL_CONSTEXPR qsizetype lengthHelperArray(const Char (&)[N]) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-                             iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:148:12: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     static qsizetype lengthHelperPointer(const Char *str) Q_DECL_NOTHROW
-            ^~~~~~~~~
-            iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:160:12: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     static qsizetype lengthHelperPointer(const QChar *str) Q_DECL_NOTHROW
-            ^~~~~~~~~
-            iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:174:48: error: invalid use of ‘::’
-     Q_DECL_CONSTEXPR QStringView(std::nullptr_t) Q_DECL_NOTHROW
-                                                ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:174:48: error: expected ‘;’ at end of member declaration
-     Q_DECL_CONSTEXPR QStringView(std::nullptr_t) Q_DECL_NOTHROW
-                                                ^
-                                                 ;
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:105,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:174:50: error: expected unqualified-id before ‘noexcept’
-     Q_DECL_CONSTEXPR QStringView(std::nullptr_t) Q_DECL_NOTHROW
-                                                  ^~~~~~~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:178:51: error: ‘qsizetype’ has not been declared
-     Q_DECL_CONSTEXPR QStringView(const Char *str, qsizetype len)
-                                                   ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:217:40: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR qsizetype size() const Q_DECL_NOTHROW { return m_size; }
-                                        ^~~~~~~~~
-                                        iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:221:57: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QChar operator[](qsizetype n) const
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:233:49: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QChar at(qsizetype n) const { return (*this)[n]; }
-                                                 ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:235:56: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView mid(qsizetype pos) const
-                                                        ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:237:56: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView mid(qsizetype pos, qsizetype n) const
-                                                        ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:237:71: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView mid(qsizetype pos, qsizetype n) const
-                                                                       ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:239:57: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView left(qsizetype n) const
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:241:58: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView right(qsizetype n) const
-                                                          ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:243:60: error: ‘qsizetype’ has not been declared
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QStringView chopped(qsizetype n) const
-                                                            ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:246:44: error: ‘qsizetype’ has not been declared
-     Q_DECL_RELAXED_CONSTEXPR void truncate(qsizetype n)
-                                            ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:248:40: error: ‘qsizetype’ has not been declared
-     Q_DECL_RELAXED_CONSTEXPR void chop(qsizetype n)
-                                        ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:298:5: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     qsizetype m_size;
-     ^~~~~~~~~
-     iswctype
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In constructor ‘constexpr QStringView::QStringView()’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:173:11: error: class ‘QStringView’ does not have any field named ‘m_size’
-         : m_size(0), m_data(nullptr) {}
-           ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In constructor ‘constexpr QStringView::QStringView(const Char*, int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:179:11: error: class ‘QStringView’ does not have any field named ‘m_size’
-         : m_size((Q_ASSERT(len >= 0), Q_ASSERT(str || !len), len)),
-           ^~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QChar QStringView::operator[](int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:222:32: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n < size()), QChar(m_data[n]); }
-                                ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:222:32: note: suggested alternative: ‘dysize’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QStringView QStringView::mid(int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:236:34: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(pos >= 0), Q_ASSERT(pos <= size()), QStringView(m_data + pos, m_size - pos); }
-                                  ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:236:34: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:236:85: error: ‘m_size’ was not declared in this scope
-     { return Q_ASSERT(pos >= 0), Q_ASSERT(pos <= size()), QStringView(m_data + pos, m_size - pos); }
-                                                                                     ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:236:85: note: suggested alternative: ‘dysize’
-     { return Q_ASSERT(pos >= 0), Q_ASSERT(pos <= size()), QStringView(m_data + pos, m_size - pos); }
-                                                                                     ^~~~~~
-                                                                                     dysize
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QStringView QStringView::mid(int, int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:238:52: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(pos >= 0), Q_ASSERT(n >= 0), Q_ASSERT(pos + n <= size()), QStringView(m_data + pos, n); }
-                                                    ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:238:52: note: suggested alternative: ‘dysize’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QStringView QStringView::left(int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:240:32: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data, n); }
-                                ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:240:32: note: suggested alternative: ‘dysize’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QStringView QStringView::right(int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:242:32: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data + m_size - n, n); }
-                                ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:242:32: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:242:76: error: ‘m_size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data + m_size - n, n); }
-                                                                            ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:242:76: note: suggested alternative: ‘dysize’
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data + m_size - n, n); }
-                                                                            ^~~~~~
-                                                                            dysize
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QStringView QStringView::chopped(int) const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:244:32: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data, m_size - n); }
-                                ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:244:32: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:244:75: error: ‘m_size’ was not declared in this scope
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data, m_size - n); }
-                                                                           ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:244:75: note: suggested alternative: ‘dysize’
-     { return Q_ASSERT(n >= 0), Q_ASSERT(n <= size()), QStringView(m_data, m_size - n); }
-                                                                           ^~~~~~
-                                                                           dysize
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr void QStringView::truncate(int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:247:25: error: ‘size’ was not declared in this scope
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size = n; }
-                         ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:247:25: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:247:48: error: ‘m_size’ was not declared in this scope
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size = n; }
-                                                ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:247:48: note: suggested alternative: ‘dysize’
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size = n; }
-                                                ^~~~~~
-                                                dysize
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr void QStringView::chop(int)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:249:25: error: ‘size’ was not declared in this scope
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size -= n; }
-                         ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:249:25: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:249:48: error: ‘m_size’ was not declared in this scope
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size -= n; }
-                                                ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:249:48: note: suggested alternative: ‘dysize’
-     { Q_ASSERT(n >= 0); Q_ASSERT(n <= size()); m_size -= n; }
-                                                ^~~~~~
-                                                dysize
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘QStringView::value_type* QStringView::end() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:276:87: error: ‘size’ was not declared in this scope
-     Q_REQUIRED_RESULT const_iterator end()     const Q_DECL_NOTHROW { return data() + size(); }
-                                                                                       ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:276:87: note: suggested alternative: ‘dysize’
-     Q_REQUIRED_RESULT const_iterator end()     const Q_DECL_NOTHROW { return data() + size(); }
-                                                                                       ^~~~
-                                                                                       dysize
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr bool QStringView::empty() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:284:83: error: ‘size’ was not declared in this scope
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR bool empty() const Q_DECL_NOTHROW { return size() == 0; }
-                                                                                   ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:284:83: note: suggested alternative: ‘dysize’
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR bool empty() const Q_DECL_NOTHROW { return size() == 0; }
-                                                                                   ^~~~
-                                                                                   dysize
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr QChar QStringView::back() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:286:102: error: ‘m_size’ was not declared in this scope
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QChar back()  const { return Q_ASSERT(!empty()), QChar(m_data[m_size - 1]); }
-                                                                                                      ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:286:102: note: suggested alternative: ‘dysize’
-     Q_REQUIRED_RESULT Q_DECL_CONSTEXPR QChar back()  const { return Q_ASSERT(!empty()), QChar(m_data[m_size - 1]); }
-                                                                                                      ^~~~~~
-                                                                                                      dysize
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In member function ‘constexpr int QStringView::length() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:294:14: error: ‘size’ was not declared in this scope
-     { return Q_ASSERT(int(size()) == size()), int(size()); }
-              ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:294:14: note: suggested alternative: ‘dysize’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In member function ‘QString QStringView::toString() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:921:10: error: ‘size’ was not declared in this scope
- { return Q_ASSERT(size() == length()), QString(data(), length()); }
-          ^~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:921:10: note: suggested alternative: ‘dysize’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In static member function ‘static QString QString::fromStdString(const string&)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1370:35: error: ‘const string’ {aka ‘const class std::__cxx11::basic_string<char>’} has no member named ‘size’
- { return fromUtf8(s.data(), int(s.size())); }
-                                   ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In member function ‘std::__cxx11::wstring QString::toStdWString() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1375:9: error: ‘std::__cxx11::wstring’ {aka ‘class std::__cxx11::basic_string<wchar_t>’} has no member named ‘resize’
-     str.resize(length());
-         ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1383:9: error: ‘std::__cxx11::wstring’ {aka ‘class std::__cxx11::basic_string<wchar_t>’} has no member named ‘resize’
-     str.resize(toWCharArray(&(*str.begin())));
-         ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In static member function ‘static QString QString::fromStdWString(const wstring&)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1388:41: error: ‘const wstring’ {aka ‘const class std::__cxx11::basic_string<wchar_t>’} has no member named ‘size’
- { return fromWCharArray(s.data(), int(s.size())); }
-                                         ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In static member function ‘static QString QString::fromStdU16String(const u16string&)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1392:36: error: ‘const u16string’ {aka ‘const class std::__cxx11::basic_string<char16_t>’} has no member named ‘size’
- { return fromUtf16(s.data(), int(s.size())); }
-                                    ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In member function ‘std::__cxx11::u16string QString::toStdU16String() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1395:77: error: no matching function for call to ‘std::__cxx11::basic_string<char16_t>::basic_string(const char16_t*, int)’
- { return std::u16string(reinterpret_cast<const char16_t*>(utf16()), length()); }
-                                                                             ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1395:77: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘const char16_t*’ and ‘int’)
- { return std::u16string(reinterpret_cast<const char16_t*>(utf16()), length()); }
-                                                                             ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘const char16_t*’ to ‘std::initializer_list<char16_t>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘int’ to ‘const std::allocator<char16_t>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char16_t; _Traits = std::char_traits<char16_t>; _Alloc = std::allocator<char16_t>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In static member function ‘static QString QString::fromStdU32String(const u32string&)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1398:35: error: ‘const u32string’ {aka ‘const class std::__cxx11::basic_string<char32_t>’} has no member named ‘size’
- { return fromUcs4(s.data(), int(s.size())); }
-                                   ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In member function ‘std::__cxx11::u32string QString::toStdU32String() const’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1402:48: error: no matching function for call to ‘std::__cxx11::basic_string<char32_t>::basic_string(int, char32_t)’
-     std::u32string u32str(length(), char32_t(0));
-                                                ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:614:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&)’
-         basic_string(_InputIterator __beg, _InputIterator __end,
-         ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:614:9: note:   template argument deduction/substitution failed:
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1402:48: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘int’ and ‘char32_t’)
-     std::u32string u32str(length(), char32_t(0));
-                                                ^
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h:576:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(basic_string&& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:576:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string<char32_t>&&’
-/usr/include/c++/8/bits/basic_string.h:572:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const basic_string& __str, const _Alloc& __a)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:572:7: note:   no known conversion for argument 1 from ‘int’ to ‘const std::__cxx11::basic_string<char32_t>&’
-/usr/include/c++/8/bits/basic_string.h:568:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initializer_list<_Tp>, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:568:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::initializer_list<char32_t>’
-/usr/include/c++/8/bits/basic_string.h:541:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(basic_string&& __str) noexcept
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:541:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:514:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _CharT*, const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const _CharT* __s, const _Alloc& __a = _Alloc())
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:514:7: note:   no known conversion for argument 2 from ‘char32_t’ to ‘const std::allocator<char32_t>&’
-/usr/include/c++/8/bits/basic_string.h:437:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const basic_string& __str)
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:437:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:429:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Alloc&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:429:7: note:   candidate expects 1 argument, 2 provided
-/usr/include/c++/8/bits/basic_string.h:420:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-       basic_string()
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:420:7: note:   candidate expects 0 arguments, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1403:81: error: no match for ‘operator[]’ (operand types are ‘std::__cxx11::u32string’ {aka ‘std::__cxx11::basic_string<char32_t>’} and ‘int’)
-     int len = toUcs4_helper(d->data(), length(), reinterpret_cast<uint*>(&u32str[0]));
-                                                                                 ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1404:12: error: ‘std::__cxx11::u32string’ {aka ‘class std::__cxx11::basic_string<char32_t>’} has no member named ‘resize’
-     u32str.resize(len);
-            ^~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In function ‘bool operator==(QStringView, QStringView)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1729:86: error: ‘class QStringView’ has no member named ‘size’
- inline bool operator==(QStringView lhs, QStringView rhs) Q_DECL_NOTHROW { return lhs.size() == rhs.size() && QtPrivate::compareStrings(lhs, rhs) == 0; }
-                                                                                      ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1729:100: error: ‘class QStringView’ has no member named ‘size’
- inline bool operator==(QStringView lhs, QStringView rhs) Q_DECL_NOTHROW { return lhs.size() == rhs.size() && QtPrivate::compareStrings(lhs, rhs) == 0; }
-                                                                                                    ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In function ‘bool operator==(QStringView, QLatin1String)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1752:88: error: ‘class QStringView’ has no member named ‘size’
- inline bool operator==(QStringView lhs, QLatin1String rhs) Q_DECL_NOTHROW { return lhs.size() == rhs.size() && QtPrivate::compareStrings(lhs, rhs) == 0; }
-                                                                                        ^~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h: In function ‘bool operator==(QLatin1String, QStringView)’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1759:102: error: ‘class QStringView’ has no member named ‘size’
- inline bool operator==(QLatin1String lhs, QStringView rhs) Q_DECL_NOTHROW { return lhs.size() == rhs.size() && QtPrivate::compareStrings(lhs, rhs) == 0; }
-                                                                                                      ^~~~
-In file included from /usr/include/c++/8/bits/stl_list.h:63,
-                 from /usr/include/c++/8/list:63,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:50,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/bits/allocated_ptr.h: At global scope:
-/usr/include/c++/8/bits/allocated_ptr.h:78:31: error: declaration of ‘operator=’ as non-function
-       operator=(std::nullptr_t) noexcept
-                               ^
-/usr/include/c++/8/bits/allocated_ptr.h:78:15: error: expected ‘;’ at end of member declaration
-       operator=(std::nullptr_t) noexcept
-               ^
-                ;
-/usr/include/c++/8/bits/allocated_ptr.h:78:31: error: invalid use of ‘::’
-       operator=(std::nullptr_t) noexcept
-                               ^
-/usr/include/c++/8/bits/allocated_ptr.h:78:31: error: expected ‘;’ at end of member declaration
-       operator=(std::nullptr_t) noexcept
-                               ^
-                                ;
-/usr/include/c++/8/bits/allocated_ptr.h:78:33: error: expected unqualified-id before ‘noexcept’
-       operator=(std::nullptr_t) noexcept
-                                 ^~~~~~~~
-In file included from /usr/include/c++/8/bits/stl_list.h:64,
-                 from /usr/include/c++/8/list:63,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:50,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/ext/aligned_buffer.h:61:42: error: invalid use of ‘::’
-       __aligned_membuf(std::nullptr_t) { }
-                                          ^
-/usr/include/c++/8/ext/aligned_buffer.h:61:42: error: expected ‘;’ at end of member declaration
-       __aligned_membuf(std::nullptr_t) { }
-                                          ^
-                                           ;
-/usr/include/c++/8/ext/aligned_buffer.h:99:42: error: invalid use of ‘::’
-       __aligned_buffer(std::nullptr_t) { }
-                                          ^
-/usr/include/c++/8/ext/aligned_buffer.h:99:42: error: expected ‘;’ at end of member declaration
-       __aligned_buffer(std::nullptr_t) { }
-                                          ^
-                                           ;
-In file included from /usr/include/c++/8/list:63,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:50,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/bits/stl_list.h:106:12: error: ‘size_t’ in namespace ‘std’ does not name a type
-       std::size_t _M_size;
-            ^~~~~~
-/usr/include/c++/8/bits/stl_list.h: In constructor ‘std::__detail::_List_node_header::_List_node_header(std::__detail::_List_node_header&&)’:
-/usr/include/c++/8/bits/stl_list.h:116:9: error: class ‘std::__detail::_List_node_header’ does not have any field named ‘_M_size’
-       , _M_size(__x._M_size)
-         ^~~~~~~
-/usr/include/c++/8/bits/stl_list.h:116:21: error: ‘struct std::__detail::_List_node_header’ has no member named ‘_M_size’; did you mean ‘_M_base’?
-       , _M_size(__x._M_size)
-                     ^~~~~~~
-                     _M_base
-/usr/include/c++/8/bits/stl_list.h: In member function ‘void std::__detail::_List_node_header::_M_move_nodes(std::__detail::_List_node_header&&)’:
-/usr/include/c++/8/bits/stl_list.h:141:6: error: ‘_M_size’ was not declared in this scope
-      _M_size = __x._M_size;
-      ^~~~~~~
-/usr/include/c++/8/bits/stl_list.h:141:6: note: suggested alternative: ‘_M_base’
-      _M_size = __x._M_size;
-      ^~~~~~~
-      _M_base
-/usr/include/c++/8/bits/stl_list.h:141:20: error: ‘struct std::__detail::_List_node_header’ has no member named ‘_M_size’; did you mean ‘_M_base’?
-      _M_size = __x._M_size;
-                    ^~~~~~~
-                    _M_base
-/usr/include/c++/8/bits/stl_list.h: In member function ‘void std::__detail::_List_node_header::_M_init()’:
-/usr/include/c++/8/bits/stl_list.h:153:8: error: ‘struct std::__detail::_List_node_header’ has no member named ‘_M_size’; did you mean ‘_M_base’?
-  this->_M_size = 0;
-        ^~~~~~~
-        _M_base
-/usr/include/c++/8/bits/stl_list.h: In function ‘ptrdiff_t std::__distance(std::_List_const_iterator<_Tp>, std::_List_const_iterator<_Tp>, std::input_iterator_tag)’:
-/usr/include/c++/8/bits/stl_list.h:2082:56: error: ‘const _Sentinel’ {aka ‘const struct std::__detail::_List_node_header’} has no member named ‘_M_size’; did you mean ‘_M_base’?
-  return static_cast<const _Sentinel*>(__last._M_node)->_M_size;
-                                                        ^~~~~~~
-                                                        _M_base
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:53,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:196:68: error: ‘std::nullptr_t’ has not been declared
- inline bool operator==(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                                    ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:29: error: declaration of ‘operator==’ as non-function
- inline bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:53,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:40: error: expected primary-expression before ‘const’
- inline bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:71: error: expected primary-expression before ‘>’ token
- inline bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                                                       ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:202:74: error: ‘rhs’ was not declared in this scope
- inline bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                                                          ^~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:208:68: error: ‘std::nullptr_t’ has not been declared
- inline bool operator!=(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                                    ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:29: error: declaration of ‘operator!=’ as non-function
- inline bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:53,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:40: error: expected primary-expression before ‘const’
- inline bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:71: error: expected primary-expression before ‘>’ token
- inline bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                                                       ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:214:74: error: ‘rhs’ was not declared in this scope
- inline bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROW
-                                                                          ^~~
-In file included from /usr/include/c++/8/tuple:39,
-                 from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/array:47:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:50:25: error: ‘_Nm’ was not declared in this scope
-       typedef _Tp _Type[_Nm];
-                         ^~~
-/usr/include/c++/8/array:55:20: error: ‘_Type’ does not name a type; did you mean ‘_Tp’?
-       _S_ref(const _Type& __t, std::size_t __n) noexcept
-                    ^~~~~
-                    _Tp
-/usr/include/c++/8/array:55:37: error: ‘std::size_t’ has not been declared
-       _S_ref(const _Type& __t, std::size_t __n) noexcept
-                                     ^~~~~~
-/usr/include/c++/8/array:59:20: error: ‘_Type’ does not name a type; did you mean ‘_Tp’?
-       _S_ptr(const _Type& __t) noexcept
-                    ^~~~~
-                    _Tp
-/usr/include/c++/8/array:93:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:103:20: error: ‘size_t’ in namespace ‘std’ does not name a type
-       typedef std::size_t                           size_type;
-                    ^~~~~~
-/usr/include/c++/8/array:104:20: error: ‘ptrdiff_t’ in namespace ‘std’ does not name a type
-       typedef std::ptrdiff_t                          difference_type;
-                    ^~~~~~~~~
-/usr/include/c++/8/array:109:51: error: ‘_Nm’ was not declared in this scope
-       typedef _GLIBCXX_STD_C::__array_traits<_Tp, _Nm> _AT_Type;
-                                                   ^~~
-/usr/include/c++/8/array:109:54: error: template argument 2 is invalid
-       typedef _GLIBCXX_STD_C::__array_traits<_Tp, _Nm> _AT_Type;
-                                                      ^
-/usr/include/c++/8/array:110:16: error: ‘_AT_Type’ is not a class, namespace, or enumeration
-       typename _AT_Type::_Type                         _M_elems;
-                ^~~~~~~~
-/usr/include/c++/8/array:121:16: error: ‘_AT_Type’ is not a class, namespace, or enumeration
-       noexcept(_AT_Type::_Is_nothrow_swappable::value)
-                ^~~~~~~~
-/usr/include/c++/8/array:174:17: error: ‘size_type’ does not name a type; did you mean ‘true_type’?
-       constexpr size_type
-                 ^~~~~~~~~
-                 true_type
-/usr/include/c++/8/array:177:17: error: ‘size_type’ does not name a type; did you mean ‘true_type’?
-       constexpr size_type
-                 ^~~~~~~~~
-                 true_type
-/usr/include/c++/8/array:185:18: error: ‘size_type’ has not been declared
-       operator[](size_type __n) noexcept
-                  ^~~~~~~~~
-/usr/include/c++/8/array:189:18: error: ‘size_type’ has not been declared
-       operator[](size_type __n) const noexcept
-                  ^~~~~~~~~
-/usr/include/c++/8/array:193:10: error: ‘size_type’ has not been declared
-       at(size_type __n)
-          ^~~~~~~~~
-/usr/include/c++/8/array:203:10: error: ‘size_type’ has not been declared
-       at(size_type __n) const
-          ^~~~~~~~~
-/usr/include/c++/8/array:250:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:252:33: error: ‘_Nm’ was not declared in this scope
-     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                 ^~~
-/usr/include/c++/8/array:252:36: error: template argument 2 is invalid
-     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                    ^
-/usr/include/c++/8/array:252:63: error: ‘_Nm’ was not declared in this scope
-     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                               ^~~
-/usr/include/c++/8/array:252:66: error: template argument 2 is invalid
-     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                  ^
-/usr/include/c++/8/array:252:74: error: ‘bool std::operator==(const int&, const int&)’ must have an argument of class or enumerated type
-     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                          ^
-/usr/include/c++/8/array:255:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:257:33: error: ‘_Nm’ was not declared in this scope
-     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                 ^~~
-/usr/include/c++/8/array:257:36: error: template argument 2 is invalid
-     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                    ^
-/usr/include/c++/8/array:257:63: error: ‘_Nm’ was not declared in this scope
-     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                               ^~~
-/usr/include/c++/8/array:257:66: error: template argument 2 is invalid
-     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                  ^
-/usr/include/c++/8/array:257:74: error: ‘bool std::operator!=(const int&, const int&)’ must have an argument of class or enumerated type
-     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                          ^
-/usr/include/c++/8/array:260:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:262:32: error: ‘_Nm’ was not declared in this scope
-     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
-                                ^~~
-/usr/include/c++/8/array:262:35: error: template argument 2 is invalid
-     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
-                                   ^
-/usr/include/c++/8/array:262:60: error: ‘_Nm’ was not declared in this scope
-     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
-                                                            ^~~
-/usr/include/c++/8/array:262:63: error: template argument 2 is invalid
-     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
-                                                               ^
-/usr/include/c++/8/array:262:69: error: ‘bool std::operator<(const int&, const int&)’ must have an argument of class or enumerated type
-     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
-                                                                     ^
-/usr/include/c++/8/array:268:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:270:32: error: ‘_Nm’ was not declared in this scope
-     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                ^~~
-/usr/include/c++/8/array:270:35: error: template argument 2 is invalid
-     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                   ^
-/usr/include/c++/8/array:270:62: error: ‘_Nm’ was not declared in this scope
-     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                              ^~~
-/usr/include/c++/8/array:270:65: error: template argument 2 is invalid
-     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                 ^
-/usr/include/c++/8/array:270:73: error: ‘bool std::operator>(const int&, const int&)’ must have an argument of class or enumerated type
-     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                         ^
-/usr/include/c++/8/array:273:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:275:33: error: ‘_Nm’ was not declared in this scope
-     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                 ^~~
-/usr/include/c++/8/array:275:36: error: template argument 2 is invalid
-     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                    ^
-/usr/include/c++/8/array:275:63: error: ‘_Nm’ was not declared in this scope
-     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                               ^~~
-/usr/include/c++/8/array:275:66: error: template argument 2 is invalid
-     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                  ^
-/usr/include/c++/8/array:275:74: error: ‘bool std::operator<=(const int&, const int&)’ must have an argument of class or enumerated type
-     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                          ^
-/usr/include/c++/8/array:278:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:280:33: error: ‘_Nm’ was not declared in this scope
-     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                 ^~~
-/usr/include/c++/8/array:280:36: error: template argument 2 is invalid
-     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                    ^
-/usr/include/c++/8/array:280:63: error: ‘_Nm’ was not declared in this scope
-     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                               ^~~
-/usr/include/c++/8/array:280:66: error: template argument 2 is invalid
-     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                  ^
-/usr/include/c++/8/array:280:74: error: ‘bool std::operator>=(const int&, const int&)’ must have an argument of class or enumerated type
-     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
-                                                                          ^
-/usr/include/c++/8/array:284:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:289:43: error: ‘_Nm’ was not declared in this scope
-       _GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value
-                                           ^~~
-/usr/include/c++/8/array:289:46: error: template argument 2 is invalid
-       _GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value
-                                              ^
-/usr/include/c++/8/array:290:5: error: template argument 1 is invalid
-     >::type
-     ^
-/usr/include/c++/8/array:288:14: error: expected nested-name-specifier
-     typename enable_if<
-              ^~~~~~~~~~
-       _GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value
-       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-     >::type
-     ~         
-/usr/include/c++/8/array:294:5: error: expected initializer before ‘swap’
-     swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two)
-     ^~~~
-/usr/include/c++/8/array:299:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:301:44: error: ‘_Nm’ was not declared in this scope
-       !_GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value>::type
-                                            ^~~
-/usr/include/c++/8/array:301:47: error: template argument 2 is invalid
-       !_GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value>::type
-                                               ^
-/usr/include/c++/8/array:301:70: error: template argument 1 is invalid
-       !_GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value>::type
-                                                                      ^
-/usr/include/c++/8/array:300:14: error: expected nested-name-specifier
-     typename enable_if<
-              ^~~~~~~~~~
-       !_GLIBCXX_STD_C::__array_traits<_Tp, _Nm>::_Is_swappable::value>::type
-       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/array:302:5: error: expected initializer before ‘swap’
-     swap(array<_Tp, _Nm>&, array<_Tp, _Nm>&) = delete;
-     ^~~~
-/usr/include/c++/8/array:305:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                 ^~~~~~
-/usr/include/c++/8/array:305:49: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                                                 ^~~~~~
-/usr/include/c++/8/array:307:20: error: ‘_Nm’ was not declared in this scope
-     get(array<_Tp, _Nm>& __arr) noexcept
-                    ^~~
-/usr/include/c++/8/array:307:23: error: template argument 2 is invalid
-     get(array<_Tp, _Nm>& __arr) noexcept
-                       ^
-/usr/include/c++/8/array: In function ‘constexpr _Tp& std::get(int&)’:
-/usr/include/c++/8/array:309:21: error: ‘_Int’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-/usr/include/c++/8/array:309:21: note: suggested alternative: ‘qInf’
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-                     qInf
-/usr/include/c++/8/array:309:28: error: ‘_Nm’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                            ^~~
-/usr/include/c++/8/array:311:15: error: request for member ‘_M_elems’ in ‘__arr’, which is of non-class type ‘int’
-  _S_ref(__arr._M_elems, _Int);
-               ^~~~~~~~
-/usr/include/c++/8/array: At global scope:
-/usr/include/c++/8/array:314:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                 ^~~~~~
-/usr/include/c++/8/array:314:49: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                                                 ^~~~~~
-/usr/include/c++/8/array:316:20: error: ‘_Nm’ was not declared in this scope
-     get(array<_Tp, _Nm>&& __arr) noexcept
-                    ^~~
-/usr/include/c++/8/array:316:23: error: template argument 2 is invalid
-     get(array<_Tp, _Nm>&& __arr) noexcept
-                       ^
-/usr/include/c++/8/array: In function ‘constexpr _Tp&& std::get(int&&)’:
-/usr/include/c++/8/array:318:21: error: ‘_Int’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-/usr/include/c++/8/array:318:21: note: suggested alternative: ‘qInf’
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-                     qInf
-/usr/include/c++/8/array:318:28: error: ‘_Nm’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                            ^~~
-/usr/include/c++/8/array:319:55: error: no matching function for call to ‘get<_Int>(int&)’
-       return std::move(_GLIBCXX_STD_C::get<_Int>(__arr));
-                                                       ^
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/utility:216:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr int& std::get(std::pair<_Tp1, _Tp2>&)’
-     get(std::pair<_Tp1, _Tp2>& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:216:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:221:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr int&& std::get(std::pair<_Tp1, _Tp2>&&)’
-     get(std::pair<_Tp1, _Tp2>&& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:221:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:226:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr const int& std::get(const std::pair<_Tp1, _Tp2>&)’
-     get(const std::pair<_Tp1, _Tp2>& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:226:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:231:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr const int&& std::get(const std::pair<_Tp1, _Tp2>&&)’
-     get(const std::pair<_Tp1, _Tp2>&& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:231:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:240:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_T1, _T2>&)’
-     get(pair<_Tp, _Up>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:240:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:245:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_T1, _T2>&)’
-     get(const pair<_Tp, _Up>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:245:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:250:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_T1, _T2>&&)’
-     get(pair<_Tp, _Up>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:250:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:255:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_T1, _T2>&&)’
-     get(const pair<_Tp, _Up>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:255:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:260:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_Up, _Tp>&)’
-     get(pair<_Up, _Tp>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:260:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:265:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_Up, _Tp>&)’
-     get(const pair<_Up, _Tp>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:265:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:270:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_Up, _Tp>&&)’
-     get(pair<_Up, _Tp>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:270:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:275:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_Up, _Tp>&&)’
-     get(const pair<_Up, _Tp>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:275:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/tuple:39,
-                 from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/array:307:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp& std::get(int&)’
-     get(array<_Tp, _Nm>& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:307:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array:316:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp&& std::get(int&&)’
-     get(array<_Tp, _Nm>&& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:316:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array: At global scope:
-/usr/include/c++/8/array:322:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                 ^~~~~~
-/usr/include/c++/8/array:322:49: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                                                 ^~~~~~
-/usr/include/c++/8/array:324:26: error: ‘_Nm’ was not declared in this scope
-     get(const array<_Tp, _Nm>& __arr) noexcept
-                          ^~~
-/usr/include/c++/8/array:324:29: error: template argument 2 is invalid
-     get(const array<_Tp, _Nm>& __arr) noexcept
-                             ^
-/usr/include/c++/8/array: In function ‘constexpr const _Tp& std::get(const int&)’:
-/usr/include/c++/8/array:326:21: error: ‘_Int’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-/usr/include/c++/8/array:326:21: note: suggested alternative: ‘qInf’
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-                     qInf
-/usr/include/c++/8/array:326:28: error: ‘_Nm’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                            ^~~
-/usr/include/c++/8/array:328:15: error: request for member ‘_M_elems’ in ‘__arr’, which is of non-class type ‘const int’
-  _S_ref(__arr._M_elems, _Int);
-               ^~~~~~~~
-/usr/include/c++/8/array: At global scope:
-/usr/include/c++/8/array:331:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                 ^~~~~~
-/usr/include/c++/8/array:331:49: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                                                 ^~~~~~
-/usr/include/c++/8/array:333:26: error: ‘_Nm’ was not declared in this scope
-     get(const array<_Tp, _Nm>&& __arr) noexcept
-                          ^~~
-/usr/include/c++/8/array:333:29: error: template argument 2 is invalid
-     get(const array<_Tp, _Nm>&& __arr) noexcept
-                             ^
-/usr/include/c++/8/array: In function ‘constexpr const _Tp&& std::get(const int&&)’:
-/usr/include/c++/8/array:335:21: error: ‘_Int’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-/usr/include/c++/8/array:335:21: note: suggested alternative: ‘qInf’
-       static_assert(_Int < _Nm, "array index is within bounds");
-                     ^~~~
-                     qInf
-/usr/include/c++/8/array:335:28: error: ‘_Nm’ was not declared in this scope
-       static_assert(_Int < _Nm, "array index is within bounds");
-                            ^~~
-/usr/include/c++/8/array:336:55: error: no matching function for call to ‘get<_Int>(const int&)’
-       return std::move(_GLIBCXX_STD_C::get<_Int>(__arr));
-                                                       ^
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/utility:216:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr int& std::get(std::pair<_Tp1, _Tp2>&)’
-     get(std::pair<_Tp1, _Tp2>& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:216:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:221:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr int&& std::get(std::pair<_Tp1, _Tp2>&&)’
-     get(std::pair<_Tp1, _Tp2>&& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:221:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:226:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr const int& std::get(const std::pair<_Tp1, _Tp2>&)’
-     get(const std::pair<_Tp1, _Tp2>& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:226:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:231:5: note: candidate: ‘template<<declaration error>, class _Tp1, class _Tp2> constexpr const int&& std::get(const std::pair<_Tp1, _Tp2>&&)’
-     get(const std::pair<_Tp1, _Tp2>&& __in) noexcept
-     ^~~
-/usr/include/c++/8/utility:231:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:240:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_T1, _T2>&)’
-     get(pair<_Tp, _Up>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:240:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:245:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_T1, _T2>&)’
-     get(const pair<_Tp, _Up>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:245:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:250:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_T1, _T2>&&)’
-     get(pair<_Tp, _Up>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:250:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:255:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_T1, _T2>&&)’
-     get(const pair<_Tp, _Up>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:255:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:260:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp& std::get(std::pair<_Up, _Tp>&)’
-     get(pair<_Up, _Tp>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:260:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:265:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp& std::get(const std::pair<_Up, _Tp>&)’
-     get(const pair<_Up, _Tp>& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:265:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:270:5: note: candidate: ‘template<class _Tp, class _Up> constexpr _Tp&& std::get(std::pair<_Up, _Tp>&&)’
-     get(pair<_Up, _Tp>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:270:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/utility:275:5: note: candidate: ‘template<class _Tp, class _Up> constexpr const _Tp&& std::get(const std::pair<_Up, _Tp>&&)’
-     get(const pair<_Up, _Tp>&& __p) noexcept
-     ^~~
-/usr/include/c++/8/utility:275:5: note:   template argument deduction/substitution failed:
-In file included from /usr/include/c++/8/tuple:39,
-                 from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/array:307:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp& std::get(int&)’
-     get(array<_Tp, _Nm>& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:307:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array:316:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp&& std::get(int&&)’
-     get(array<_Tp, _Nm>&& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:316:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array:324:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr const _Tp& std::get(const int&)’
-     get(const array<_Tp, _Nm>& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:324:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array:333:5: note: candidate: ‘template<<declaration error>, class _Tp, <declaration error> > constexpr const _Tp&& std::get(const int&&)’
-     get(const array<_Tp, _Nm>&& __arr) noexcept
-     ^~~
-/usr/include/c++/8/array:333:5: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/array: At global scope:
-/usr/include/c++/8/array:353:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:354:50: error: ‘_Nm’ was not declared in this scope
-     struct tuple_size<_GLIBCXX_STD_C::array<_Tp, _Nm>>
-                                                  ^~~
-/usr/include/c++/8/array:354:50: error: template argument 2 is invalid
-/usr/include/c++/8/array:354:53: error: template argument 1 is invalid
-     struct tuple_size<_GLIBCXX_STD_C::array<_Tp, _Nm>>
-                                                     ^~
-/usr/include/c++/8/array:355:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, _Nm> { };
-                                     ^~~~~~
-/usr/include/c++/8/array:355:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/tuple:39,
-                 from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/array:355:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, _Nm> { };
-                                     ^~~~~~
-/usr/include/c++/8/array:355:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/tuple:39,
-                 from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/array:355:45: error: ‘_Nm’ was not declared in this scope
-     : public integral_constant<std::size_t, _Nm> { };
-                                             ^~~
-/usr/include/c++/8/array:355:48: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, _Nm> { };
-                                                ^
-/usr/include/c++/8/array:355:48: error: template argument 2 is invalid
-/usr/include/c++/8/array:358:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp>
-                 ^~~~~~
-/usr/include/c++/8/array:362:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                 ^~~~~~
-/usr/include/c++/8/array:362:49: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
-                                                 ^~~~~~
-/usr/include/c++/8/array:363:26: error: ‘_Int’ was not declared in this scope
-     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
-                          ^~~~
-/usr/include/c++/8/array:363:26: note: suggested alternative: ‘qInf’
-     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
-                          ^~~~
-                          qInf
-/usr/include/c++/8/array:363:59: error: ‘_Nm’ was not declared in this scope
-     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
-                                                           ^~~
-/usr/include/c++/8/array:363:59: error: template argument 2 is invalid
-/usr/include/c++/8/array:363:62: error: template argument 1 is invalid
-     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
-                                                              ^~
-/usr/include/c++/8/array:363:62: error: template argument 2 is invalid
-/usr/include/c++/8/array:369:31: error: ‘std::size_t’ has not been declared
-   template<typename _Tp, std::size_t _Nm>
-                               ^~~~~~
-/usr/include/c++/8/array:370:60: error: ‘_Nm’ was not declared in this scope
-     struct __is_tuple_like_impl<_GLIBCXX_STD_C::array<_Tp, _Nm>> : true_type
-                                                            ^~~
-/usr/include/c++/8/array:370:60: error: template argument 2 is invalid
-/usr/include/c++/8/array:370:63: error: template argument 1 is invalid
-     struct __is_tuple_like_impl<_GLIBCXX_STD_C::array<_Tp, _Nm>> : true_type
-                                                               ^~
-In file included from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/tuple:68:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename _Head,
-                 ^~~~~~
-/usr/include/c++/8/tuple:70:12: error: no default argument for ‘_Head’
-     struct _Head_base;
-            ^~~~~~~~~~
-/usr/include/c++/8/tuple:72:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename _Head>
-                 ^~~~~~
-/usr/include/c++/8/tuple:73:23: error: ‘_Idx’ was not declared in this scope
-     struct _Head_base<_Idx, _Head, true>
-                       ^~~~
-/usr/include/c++/8/tuple:73:40: error: template argument 1 is invalid
-     struct _Head_base<_Idx, _Head, true>
-                                        ^
-/usr/include/c++/8/tuple:119:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename _Head>
-                 ^~~~~~
-/usr/include/c++/8/tuple:120:23: error: ‘_Idx’ was not declared in this scope
-     struct _Head_base<_Idx, _Head, false>
-                       ^~~~
-/usr/include/c++/8/tuple:120:41: error: template argument 1 is invalid
-     struct _Head_base<_Idx, _Head, false>
-                                         ^
-/usr/include/c++/8/tuple:176:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename... _Elements>
-                 ^~~~~~
-/usr/include/c++/8/tuple:184:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename _Head, typename... _Tail>
-                 ^~~~~~
-/usr/include/c++/8/tuple:185:24: error: ‘_Idx’ was not declared in this scope
-     struct _Tuple_impl<_Idx, _Head, _Tail...>
-                        ^~~~
-/usr/include/c++/8/tuple:185:45: error: template argument 1 is invalid
-     struct _Tuple_impl<_Idx, _Head, _Tail...>
-                                             ^
-/usr/include/c++/8/tuple:186:26: error: ‘_Idx’ was not declared in this scope
-     : public _Tuple_impl<_Idx + 1, _Tail...>,
-                          ^~~~
-/usr/include/c++/8/tuple:186:44: error: template argument 1 is invalid
-     : public _Tuple_impl<_Idx + 1, _Tail...>,
-                                            ^
-/usr/include/c++/8/tuple:187:26: error: ‘_Idx’ was not declared in this scope
-       private _Head_base<_Idx, _Head>
-                          ^~~~
-/usr/include/c++/8/tuple:187:37: error: template argument 1 is invalid
-       private _Head_base<_Idx, _Head>
-                                     ^
-/usr/include/c++/8/tuple:342:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Idx, typename _Head>
-                 ^~~~~~
-/usr/include/c++/8/tuple:343:24: error: ‘_Idx’ was not declared in this scope
-     struct _Tuple_impl<_Idx, _Head>
-                        ^~~~
-/usr/include/c++/8/tuple:343:35: error: template argument 1 is invalid
-     struct _Tuple_impl<_Idx, _Head>
-                                   ^
-/usr/include/c++/8/tuple:344:26: error: ‘_Idx’ was not declared in this scope
-     : private _Head_base<_Idx, _Head>
-                          ^~~~
-/usr/include/c++/8/tuple:344:37: error: template argument 1 is invalid
-     : private _Head_base<_Idx, _Head>
-                                     ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple()’:
-/usr/include/c++/8/tuple:582:9: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-       : _Inherited() { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple()’:
-/usr/include/c++/8/tuple:592:9: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-       : _Inherited() { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(const _Elements& ...)’:
-/usr/include/c++/8/tuple:609:9: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-       : _Inherited(__elements...) { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(const _Elements& ...)’:
-/usr/include/c++/8/tuple:620:9: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-       : _Inherited(__elements...) { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(_UElements&& ...)’:
-/usr/include/c++/8/tuple:647:11: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-         : _Inherited(std::forward<_UElements>(__elements)...) { }
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(_UElements&& ...)’:
-/usr/include/c++/8/tuple:658:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(std::forward<_UElements>(__elements)...) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(const std::tuple<_Args1 ...>&)’:
-/usr/include/c++/8/tuple:679:11: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple:679:69: error: expected ‘>’ before ‘&’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                     ^
-/usr/include/c++/8/tuple:679:69: error: expected ‘(’ before ‘&’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                     ^
-                                                                     (
-/usr/include/c++/8/tuple:679:70: error: expected primary-expression before ‘>’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                      ^
-/usr/include/c++/8/tuple:680:11: error: expected ‘{’ at end of input
-         { }
-           ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(const std::tuple<_Args1 ...>&)’:
-/usr/include/c++/8/tuple:691:11: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple:691:69: error: expected ‘>’ before ‘&’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                     ^
-/usr/include/c++/8/tuple:691:69: error: expected ‘(’ before ‘&’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                     ^
-                                                                     (
-/usr/include/c++/8/tuple:691:70: error: expected primary-expression before ‘>’ token
-         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                                      ^
-/usr/include/c++/8/tuple:692:11: error: expected ‘{’ at end of input
-         { }
-           ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(std::tuple<_Args1 ...>&&)’:
-/usr/include/c++/8/tuple:703:11: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple:703:63: error: expected ‘>’ before ‘&&’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                               ^~
-/usr/include/c++/8/tuple:703:63: error: expected ‘(’ before ‘&&’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                               ^~
-                                                               (
-/usr/include/c++/8/tuple:703:65: error: expected identifier before ‘>’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                                 ^
-/usr/include/c++/8/tuple:703:76: error: expected ‘{’ at end of input
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                                            ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_Elements>::tuple(std::tuple<_Args1 ...>&&)’:
-/usr/include/c++/8/tuple:714:11: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple:714:63: error: expected ‘>’ before ‘&&’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                               ^~
-/usr/include/c++/8/tuple:714:63: error: expected ‘(’ before ‘&&’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                               ^~
-                                                               (
-/usr/include/c++/8/tuple:714:65: error: expected identifier before ‘>’ token
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                                 ^
-/usr/include/c++/8/tuple:714:76: error: expected ‘{’ at end of input
-         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
-                                                                            ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&)’:
-/usr/include/c++/8/tuple:720:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const _Elements& ...)’:
-/usr/include/c++/8/tuple:731:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, __elements...) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const _Elements& ...)’:
-/usr/include/c++/8/tuple:742:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, __elements...) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, _UElements&& ...)’:
-/usr/include/c++/8/tuple:752:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, std::forward<_UElements>(__elements)...)
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, _UElements&& ...)’:
-/usr/include/c++/8/tuple:763:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, std::forward<_UElements>(__elements)...)
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_Elements>&)’:
-/usr/include/c++/8/tuple:768:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, static_cast<const _Inherited&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_Elements>&&)’:
-/usr/include/c++/8/tuple:772:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a, static_cast<_Inherited&&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_UElements ...>&)’:
-/usr/include/c++/8/tuple:785:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:786:62: error: expected ‘>’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                              ^
-/usr/include/c++/8/tuple:786:62: error: expected ‘(’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                              ^
-                                                              (
-/usr/include/c++/8/tuple:786:63: error: expected primary-expression before ‘>’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                               ^
-/usr/include/c++/8/tuple:787:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_UElements ...>&)’:
-/usr/include/c++/8/tuple:800:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:801:62: error: expected ‘>’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                              ^
-/usr/include/c++/8/tuple:801:62: error: expected ‘(’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                              ^
-                                                              (
-/usr/include/c++/8/tuple:801:63: error: expected primary-expression before ‘>’ token
-               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
-                                                               ^
-/usr/include/c++/8/tuple:802:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_UElements ...>&&)’:
-/usr/include/c++/8/tuple:815:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:816:56: error: expected ‘>’ before ‘&&’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                        ^~
-/usr/include/c++/8/tuple:816:56: error: expected ‘(’ before ‘&&’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                        ^~
-                                                        (
-/usr/include/c++/8/tuple:816:58: error: expected identifier before ‘>’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                          ^
-/usr/include/c++/8/tuple:817:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_UElements ...>&&)’:
-/usr/include/c++/8/tuple:830:4: error: ‘typedef int std::tuple<_Elements>::_Inherited’ is not a non-static data member of ‘std::tuple<_Elements>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:831:56: error: expected ‘>’ before ‘&&’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                        ^~
-/usr/include/c++/8/tuple:831:56: error: expected ‘(’ before ‘&&’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                        ^~
-                                                        (
-/usr/include/c++/8/tuple:831:58: error: expected identifier before ‘>’ token
-               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
-                                                          ^
-/usr/include/c++/8/tuple:832:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In member function ‘void std::tuple<_Elements>::swap(std::tuple<_Elements>&)’:
-/usr/include/c++/8/tuple:872:28: error: qualified-id in declaration before ‘(’ token
-       { _Inherited::_M_swap(__in); }
-                            ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple()’:
-/usr/include/c++/8/tuple:920:9: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-       : _Inherited() { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple()’:
-/usr/include/c++/8/tuple:934:9: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-       : _Inherited() { }
-         ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const _T1&, const _T2&)’:
-/usr/include/c++/8/tuple:948:11: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-         : _Inherited(__a1, __a2) { }
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const _T1&, const _T2&)’:
-/usr/include/c++/8/tuple:957:11: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-         : _Inherited(__a1, __a2) { }
-           ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(_U1&&, _U2&&)’:
-/usr/include/c++/8/tuple:972:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(std::forward<_U1>(__a1), std::forward<_U2>(__a2)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(_U1&&, _U2&&)’:
-/usr/include/c++/8/tuple:983:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(std::forward<_U1>(__a1), std::forward<_U2>(__a2)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const std::tuple<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:996:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:996:57: error: expected ‘>’ before ‘&’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                         ^
-/usr/include/c++/8/tuple:996:57: error: expected ‘(’ before ‘&’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                         ^
-                                                         (
-/usr/include/c++/8/tuple:996:58: error: expected primary-expression before ‘>’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                          ^
-/usr/include/c++/8/tuple:996:69: error: expected ‘{’ at end of input
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                                     ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const std::tuple<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1005:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1005:57: error: expected ‘>’ before ‘&’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                         ^
-/usr/include/c++/8/tuple:1005:57: error: expected ‘(’ before ‘&’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                         ^
-                                                         (
-/usr/include/c++/8/tuple:1005:58: error: expected primary-expression before ‘>’ token
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                          ^
-/usr/include/c++/8/tuple:1005:69: error: expected ‘{’ at end of input
-  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
-                                                                     ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(std::tuple<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1014:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1014:51: error: expected ‘>’ before ‘&&’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                   ^~
-/usr/include/c++/8/tuple:1014:51: error: expected ‘(’ before ‘&&’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                   ^~
-                                                   (
-/usr/include/c++/8/tuple:1014:53: error: expected identifier before ‘>’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                     ^
-/usr/include/c++/8/tuple:1014:64: error: expected ‘{’ at end of input
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                                ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(std::tuple<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1023:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1023:51: error: expected ‘>’ before ‘&&’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                   ^~
-/usr/include/c++/8/tuple:1023:51: error: expected ‘(’ before ‘&&’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                   ^~
-                                                   (
-/usr/include/c++/8/tuple:1023:53: error: expected identifier before ‘>’ token
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                     ^
-/usr/include/c++/8/tuple:1023:64: error: expected ‘{’ at end of input
-  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
-                                                                ^
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const std::pair<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1032:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__in.first, __in.second) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(const std::pair<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1041:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__in.first, __in.second) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(std::pair<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1050:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(std::forward<_U1>(__in.first),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘constexpr std::tuple<_T1, _T2>::tuple(std::pair<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1060:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(std::forward<_U1>(__in.first),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&)’:
-/usr/include/c++/8/tuple:1067:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const _T1&, const _T2&)’:
-/usr/include/c++/8/tuple:1079:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, __a1, __a2) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const _T1&, const _T2&)’:
-/usr/include/c++/8/tuple:1091:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, __a1, __a2) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, _U1&&, _U2&&)’:
-/usr/include/c++/8/tuple:1100:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, std::forward<_U1>(__a1),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, _U1&&, _U2&&)’:
-/usr/include/c++/8/tuple:1111:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, std::forward<_U1>(__a1),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_T1, _T2>&)’:
-/usr/include/c++/8/tuple:1116:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, static_cast<const _Inherited&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_T1, _T2>&&)’:
-/usr/include/c++/8/tuple:1120:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, static_cast<_Inherited&&>(__in)) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1130:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1131:57: error: expected ‘>’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                         ^
-/usr/include/c++/8/tuple:1131:57: error: expected ‘(’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                         ^
-                                                         (
-/usr/include/c++/8/tuple:1131:58: error: expected primary-expression before ‘>’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                          ^
-/usr/include/c++/8/tuple:1132:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1142:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a,
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1143:57: error: expected ‘>’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                         ^
-/usr/include/c++/8/tuple:1143:57: error: expected ‘(’ before ‘&’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                         ^
-                                                         (
-/usr/include/c++/8/tuple:1143:58: error: expected primary-expression before ‘>’ token
-               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
-                                                          ^
-/usr/include/c++/8/tuple:1144:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1153:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1153:63: error: expected ‘>’ before ‘&&’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                               ^~
-/usr/include/c++/8/tuple:1153:63: error: expected ‘(’ before ‘&&’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                               ^~
-                                                               (
-/usr/include/c++/8/tuple:1153:65: error: expected identifier before ‘>’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                                 ^
-/usr/include/c++/8/tuple:1154:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1164:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple:1164:63: error: expected ‘>’ before ‘&&’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                               ^~
-/usr/include/c++/8/tuple:1164:63: error: expected ‘(’ before ‘&&’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                               ^~
-                                                               (
-/usr/include/c++/8/tuple:1164:65: error: expected identifier before ‘>’ token
-  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
-                                                                 ^
-/usr/include/c++/8/tuple:1165:4: error: expected ‘{’ at end of input
-  { }
-    ^
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::pair<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1175:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, __in.first, __in.second) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::pair<_U1, _U2>&)’:
-/usr/include/c++/8/tuple:1185:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, __in.first, __in.second) { }
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::pair<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1194:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, std::forward<_U1>(__in.first),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In constructor ‘std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::pair<_U1, _U2>&&)’:
-/usr/include/c++/8/tuple:1205:4: error: ‘typedef int std::tuple<_T1, _T2>::_Inherited’ is not a non-static data member of ‘std::tuple<_T1, _T2>’
-  : _Inherited(__tag, __a, std::forward<_U1>(__in.first),
-    ^~~~~~~~~~
-/usr/include/c++/8/tuple: In member function ‘void std::tuple<_T1, _T2>::swap(std::tuple<_T1, _T2>&)’:
-/usr/include/c++/8/tuple:1260:28: error: qualified-id in declaration before ‘(’ token
-       { _Inherited::_M_swap(__in); }
-                            ^
-/usr/include/c++/8/tuple: At global scope:
-/usr/include/c++/8/tuple:1267:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
-                                     ^~~~~~
-/usr/include/c++/8/tuple:1267:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/tuple:1267:37: error: ‘size_t’ is not a member of ‘std’
-     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
-                                     ^~~~~~
-/usr/include/c++/8/tuple:1267:37: note: suggested alternative:
-In file included from /usr/include/wchar.h:35,
-                 from /usr/include/c++/8/cwchar:44,
-                 from /usr/include/c++/8/bits/postypes.h:40,
-                 from /usr/include/c++/8/iosfwd:40,
-                 from /usr/include/c++/8/ios:38,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:216:23: note:   ‘size_t’
- typedef __SIZE_TYPE__ size_t;
-                       ^~~~~~
-In file included from /usr/include/c++/8/bits/stl_map.h:63,
-                 from /usr/include/c++/8/map:61,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:55,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/tuple:1267:65: error: template argument 1 is invalid
-     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
-                                                                 ^
-/usr/include/c++/8/tuple:1267:65: note: invalid template non-type parameter
-/usr/include/c++/8/tuple:1278:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Head, typename... _Tail>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1279:26: error: ‘__i’ was not declared in this scope
-     struct tuple_element<__i, tuple<_Head, _Tail...> >
-                          ^~~
-/usr/include/c++/8/tuple:1279:54: error: template argument 1 is invalid
-     struct tuple_element<__i, tuple<_Head, _Tail...> >
-                                                      ^
-/usr/include/c++/8/tuple:1280:21: error: ‘__i’ was not declared in this scope
-     : tuple_element<__i - 1, tuple<_Tail...> > { };
-                     ^~~
-/usr/include/c++/8/tuple:1280:46: error: template argument 1 is invalid
-     : tuple_element<__i - 1, tuple<_Tail...> > { };
-                                              ^
-/usr/include/c++/8/tuple:1301:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Head, typename... _Tail>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1303:30: error: ‘__i’ was not declared in this scope
-     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
-                              ^~~
-/usr/include/c++/8/tuple:1303:50: error: template argument 1 is invalid
-     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
-                                                  ^
-/usr/include/c++/8/tuple: In function ‘constexpr _Head& std::__get_helper(int&)’:
-/usr/include/c++/8/tuple:1304:26: error: ‘__i’ was not declared in this scope
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                          ^~~
-/usr/include/c++/8/tuple:1304:26: note: suggested alternative: ‘__t’
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                          ^~~
-                          __t
-/usr/include/c++/8/tuple:1304:46: error: template argument 1 is invalid
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                                              ^
-/usr/include/c++/8/tuple: At global scope:
-/usr/include/c++/8/tuple:1306:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Head, typename... _Tail>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1308:36: error: ‘__i’ was not declared in this scope
-     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
-                                    ^~~
-/usr/include/c++/8/tuple:1308:56: error: template argument 1 is invalid
-     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
-                                                        ^
-/usr/include/c++/8/tuple: In function ‘constexpr const _Head& std::__get_helper(const int&)’:
-/usr/include/c++/8/tuple:1309:26: error: ‘__i’ was not declared in this scope
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                          ^~~
-/usr/include/c++/8/tuple:1309:26: note: suggested alternative: ‘__t’
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                          ^~~
-                          __t
-/usr/include/c++/8/tuple:1309:46: error: template argument 1 is invalid
-     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
-                                              ^
-/usr/include/c++/8/tuple: At global scope:
-/usr/include/c++/8/tuple:1312:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename... _Elements>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1313:15: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
-               ^~~~~~~~~~~~~~~~~
-               tuple_element
-/usr/include/c++/8/tuple:1318:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename... _Elements>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1319:21: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
-                     ^~~~~~~~~~~~~~~~~
-                     tuple_element
-/usr/include/c++/8/tuple:1324:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename... _Elements>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1325:15: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
-               ^~~~~~~~~~~~~~~~~
-               tuple_element
-/usr/include/c++/8/tuple:1333:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename... _Elements>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1334:21: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&&
-                     ^~~~~~~~~~~~~~~~~
-                     tuple_element
-/usr/include/c++/8/tuple:1484:18: error: ‘__tuple_element_t’ was not declared in this scope
-    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
-                  ^~~~~~~~~~~~~~~~~
-/usr/include/c++/8/tuple:1484:18: note: suggested alternative: ‘tuple_element’
-    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
-                  ^~~~~~~~~~~~~~~~~
-                  tuple_element
-/usr/include/c++/8/tuple:1484:42: error: template argument 2 is invalid
-    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
-                                          ^~~~~~
-/usr/include/c++/8/tuple:1484:48: error: wrong number of template arguments (2, should be 4)
-    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
-                                                ^~
-/usr/include/c++/8/tuple:1479:12: note: provided for ‘template<long unsigned int <anonymous>, class, class, long unsigned int <anonymous> > struct std::__make_tuple_impl’
-     struct __make_tuple_impl;
-            ^~~~~~~~~~~~~~~~~
-/usr/include/c++/8/tuple:1485:15: error: expected class-name before ‘>’ token
-    _Tuple, _Nm>
-               ^
-/usr/include/c++/8/tuple:1485:15: error: expected ‘{’ before ‘>’ token
-/usr/include/c++/8/tuple:1488:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Nm, typename _Tuple, typename... _Tp>
-                 ^~~~~~
-/usr/include/c++/8/tuple:1489:30: error: ‘_Nm’ was not declared in this scope
-     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
-                              ^~~
-/usr/include/c++/8/tuple:1489:58: error: ‘_Nm’ was not declared in this scope
-     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
-                                                          ^~~
-/usr/include/c++/8/tuple:1489:61: error: template argument 1 is invalid
-     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
-                                                             ^
-/usr/include/c++/8/tuple:1489:61: error: template argument 4 is invalid
-/usr/include/c++/8/tuple:1561:32: error: ‘std::size_t’ has not been declared
-   template<typename _Ret, std::size_t... _Is, typename _Tp, typename... _Tpls>
-                                ^~~~~~
-/usr/include/c++/8/tuple:1562:53: error: ‘_Is’ was not declared in this scope
-     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
-                                                     ^~~
-/usr/include/c++/8/tuple:1562:56: error: expected parameter pack before ‘...’
-     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
-                                                        ^~~
-/usr/include/c++/8/tuple:1562:59: error: template argument 1 is invalid
-     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
-                                                           ^
-/usr/include/c++/8/tuple:1562:75: error: template argument 2 is invalid
-     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
-                                                                           ^
-/usr/include/c++/8/tuple:1661:39: error: ‘std::size_t’ has not been declared
-     template<typename... _Args1, std::size_t... _Indexes1,
-                                       ^~~~~~
-/usr/include/c++/8/tuple:1662:39: error: ‘std::size_t’ has not been declared
-              typename... _Args2, std::size_t... _Indexes2>
-                                       ^~~~~~
-/usr/include/c++/8/tuple:1666:18: error: ‘_Indexes1’ was not declared in this scope
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                  ^~~~~~~~~
-/usr/include/c++/8/tuple:1666:27: error: expected parameter pack before ‘...’
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                           ^~~
-/usr/include/c++/8/tuple:1666:30: error: template argument 1 is invalid
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                              ^
-/usr/include/c++/8/tuple:1666:46: error: ‘_Indexes2’ was not declared in this scope
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                                              ^~~~~~~~~
-/usr/include/c++/8/tuple:1666:55: error: expected parameter pack before ‘...’
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                                                       ^~~
-/usr/include/c++/8/tuple:1666:58: error: template argument 1 is invalid
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                                                          ^
-/usr/include/c++/8/tuple:1666:59: error: default argument for template parameter for class enclosing ‘std::pair<_T1, _T2>::pair(std::tuple<_Args1 ...>&, std::tuple<_Args2 ...>&, int, int)’
-     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
-                                                           ^
-/usr/include/c++/8/tuple: In constructor ‘std::pair<_T1, _T2>::pair(std::tuple<_Args1 ...>&, std::tuple<_Args2 ...>&, int, int)’:
-/usr/include/c++/8/tuple:1667:45: error: ‘_Indexes1’ was not declared in this scope
-       : first(std::forward<_Args1>(std::get<_Indexes1>(__tuple1))...),
-                                             ^~~~~~~~~
-/usr/include/c++/8/tuple:1668:46: error: ‘_Indexes2’ was not declared in this scope
-         second(std::forward<_Args2>(std::get<_Indexes2>(__tuple2))...)
-                                              ^~~~~~~~~
-In file included from /usr/include/c++/8/bits/basic_string.h:40,
-                 from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<bool>, bool>’:
-/usr/include/c++/8/bits/stl_bvector.h:429:34:   required from ‘struct std::_Bvector_base<std::allocator<bool> >’
-/usr/include/c++/8/bits/stl_bvector.h:588:11:   required from ‘class std::vector<bool>’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:876:39:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<bool> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<bool> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<bool>, bool>::_Base_type {aka std::allocator_traits<std::allocator<bool> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<bool>, bool>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<bool> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>’:
-/usr/include/c++/8/bits/stl_bvector.h:432:51:   required from ‘struct std::_Bvector_base<std::allocator<bool> >’
-/usr/include/c++/8/bits/stl_bvector.h:588:11:   required from ‘class std::vector<bool>’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:876:39:   required from here
-/usr/include/c++/8/ext/alloc_traits.h:61:53: error: no type named ‘size_type’ in ‘struct std::allocator_traits<std::allocator<long unsigned int> >’
-     typedef typename _Base_type::size_type          size_type;
-                                                     ^~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:62:53: error: no type named ‘difference_type’ in ‘struct std::allocator_traits<std::allocator<long unsigned int> >’
-     typedef typename _Base_type::difference_type    difference_type;
-                                                     ^~~~~~~~~~~~~~~
-/usr/include/c++/8/ext/alloc_traits.h:70:23: error: no members matching ‘__gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>::_Base_type {aka std::allocator_traits<std::allocator<long unsigned int> >}::max_size’ in ‘__gnu_cxx::__alloc_traits<std::allocator<long unsigned int>, long unsigned int>::_Base_type’ {aka ‘struct std::allocator_traits<std::allocator<long unsigned int> >’}
-     using _Base_type::max_size;
-                       ^~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2248:1: error: ‘nullptr_t’ is not a member of ‘std’
- QT_FOR_EACH_STATIC_TYPE(Q_DECLARE_BUILTIN_METATYPE)
- ^~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2248:1: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2248:1: error: ‘nullptr_t’ is not a member of ‘std’
- QT_FOR_EACH_STATIC_TYPE(Q_DECLARE_BUILTIN_METATYPE)
- ^~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2248:1: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2248:1: error: template argument 1 is invalid
- QT_FOR_EACH_STATIC_TYPE(Q_DECLARE_BUILTIN_METATYPE)
- ^~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/8/functional:59,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlocale.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qguiapplication.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/bits/std_function.h:134:23: error: ‘size_t’ in namespace ‘std’ does not name a type
-     static const std::size_t _M_max_size = sizeof(_Nocopy_types);
-                       ^~~~~~
-/usr/include/c++/8/bits/std_function.h:135:23: error: ‘size_t’ in namespace ‘std’ does not name a type
-     static const std::size_t _M_max_align = __alignof__(_Nocopy_types);
-                       ^~~~~~
-/usr/include/c++/8/bits/std_function.h:143:26: error: ‘_M_max_size’ was not declared in this scope
-   && sizeof(_Functor) <= _M_max_size
-                          ^~~~~~~~~~~
-/usr/include/c++/8/bits/std_function.h:143:26: note: suggested alternative: ‘_S_chunk_size’
-   && sizeof(_Functor) <= _M_max_size
-                          ^~~~~~~~~~~
-                          _S_chunk_size
-/usr/include/c++/8/bits/std_function.h:144:31: error: ‘_M_max_align’ was not declared in this scope
-   && __alignof__(_Functor) <= _M_max_align
-                               ^~~~~~~~~~~~
-/usr/include/c++/8/bits/std_function.h:144:31: note: suggested alternative: ‘max_align_t’
-   && __alignof__(_Functor) <= _M_max_align
-                               ^~~~~~~~~~~~
-                               max_align_t
-/usr/include/c++/8/bits/std_function.h:145:7: error: ‘_M_max_align’ was not declared in this scope
-   && (_M_max_align % __alignof__(_Functor) == 0));
-       ^~~~~~~~~~~~
-/usr/include/c++/8/bits/std_function.h:145:7: note: suggested alternative: ‘max_align_t’
-   && (_M_max_align % __alignof__(_Functor) == 0));
-       ^~~~~~~~~~~~
-       max_align_t
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlocale.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qguiapplication.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/c++/8/functional:259:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t __i, typename _Tuple>
-                 ^~~~~~
-/usr/include/c++/8/functional:261:29: error: ‘__i’ was not declared in this scope
-       = typename enable_if<(__i < tuple_size<_Tuple>::value),
-                             ^~~
-/usr/include/c++/8/functional:262:21: error: ‘__i’ was not declared in this scope
-       tuple_element<__i, _Tuple>>::type::type;
-                     ^~~
-/usr/include/c++/8/functional:262:26: error: template argument 1 is invalid
-       tuple_element<__i, _Tuple>>::type::type;
-                          ^~~~~~
-/usr/include/c++/8/functional:262:32: error: template argument 2 is invalid
-       tuple_element<__i, _Tuple>>::type::type;
-                                ^~
-/usr/include/c++/8/functional:262:36: error: ‘<expression error>::type’ has not been declared
-       tuple_element<__i, _Tuple>>::type::type;
-                                    ^~~~
-/usr/include/c++/8/functional:324:57: error: ‘std::size_t’ has not been declared
-       template<typename _CVArg, typename... _Args, std::size_t... _Indexes>
-                                                         ^~~~~~
-/usr/include/c++/8/functional:327:28: error: ‘_Indexes’ was not declared in this scope
-         const _Index_tuple<_Indexes...>&) const volatile
-                            ^~~~~~~~
-/usr/include/c++/8/functional:327:28: note: suggested alternative: ‘rindex’
-         const _Index_tuple<_Indexes...>&) const volatile
-                            ^~~~~~~~
-                            rindex
-/usr/include/c++/8/functional:327:36: error: expected parameter pack before ‘...’
-         const _Index_tuple<_Indexes...>&) const volatile
-                                    ^~~
-/usr/include/c++/8/functional:327:39: error: template argument 1 is invalid
-         const _Index_tuple<_Indexes...>&) const volatile
-                                       ^
-/usr/include/c++/8/functional: In member function ‘decltype (__arg((declval<_Args>)()...)) std::_Mu<_Arg, true, false>::__call(_CVArg&, std::tuple<_Args2 ...>&, const int&) const volatile’:
-/usr/include/c++/8/functional:330:26: error: ‘_Indexes’ was not declared in this scope
-    return __arg(std::get<_Indexes>(std::move(__tuple))...);
-                          ^~~~~~~~
-/usr/include/c++/8/functional:330:26: note: suggested alternative: ‘rindex’
-    return __arg(std::get<_Indexes>(std::move(__tuple))...);
-                          ^~~~~~~~
-                          rindex
-/usr/include/c++/8/functional:330:55: error: expansion pattern ‘get<<expression error> >(std::move(__tuple))’ contains no argument packs
-    return __arg(std::get<_Indexes>(std::move(__tuple))...);
-                                                       ^~~
-/usr/include/c++/8/functional: At global scope:
-/usr/include/c++/8/functional:344:2: error: ‘_Safe_tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-  _Safe_tuple_element_t<(is_placeholder<_Arg>::value - 1), _Tuple>&&
-  ^~~~~~~~~~~~~~~~~~~~~
-  tuple_element
-/usr/include/c++/8/functional:368:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Ind, typename... _Tp>
-                 ^~~~~~
-/usr/include/c++/8/functional:371:8: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     -> __tuple_element_t<_Ind, tuple<_Tp...>> volatile&
-        ^~~~~~~~~~~~~~~~~
-        tuple_element
-/usr/include/c++/8/functional:371:25: error: expected initializer before ‘<’ token
-     -> __tuple_element_t<_Ind, tuple<_Tp...>> volatile&
-                         ^
-/usr/include/c++/8/functional:375:17: error: ‘std::size_t’ has not been declared
-   template<std::size_t _Ind, typename... _Tp>
-                 ^~~~~~
-/usr/include/c++/8/functional:378:8: error: ‘__tuple_element_t’ does not name a type; did you mean ‘tuple_element’?
-     -> __tuple_element_t<_Ind, tuple<_Tp...>> const volatile&
-        ^~~~~~~~~~~~~~~~~
-        tuple_element
-/usr/include/c++/8/functional:378:25: error: expected initializer before ‘<’ token
-     -> __tuple_element_t<_Ind, tuple<_Tp...>> const volatile&
-                         ^
-/usr/include/c++/8/functional:396:58: error: ‘std::size_t’ has not been declared
-       template<typename _Result, typename... _Args, std::size_t... _Indexes>
-                                                          ^~~~~~
-/usr/include/c++/8/functional:398:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:398:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:398:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                        ^~~
-/usr/include/c++/8/functional:398:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                           ^
-/usr/include/c++/8/functional:406:58: error: ‘std::size_t’ has not been declared
-       template<typename _Result, typename... _Args, std::size_t... _Indexes>
-                                                          ^~~~~~
-/usr/include/c++/8/functional:408:50: error: ‘_Indexes’ was not declared in this scope
-  __call_c(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                  ^~~~~~~~
-/usr/include/c++/8/functional:408:50: note: suggested alternative: ‘rindex’
-  __call_c(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                  ^~~~~~~~
-                                                  rindex
-/usr/include/c++/8/functional:408:58: error: expected parameter pack before ‘...’
-  __call_c(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                          ^~~
-/usr/include/c++/8/functional:408:61: error: template argument 1 is invalid
-  __call_c(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                             ^
-/usr/include/c++/8/functional:416:58: error: ‘std::size_t’ has not been declared
-       template<typename _Result, typename... _Args, std::size_t... _Indexes>
-                                                          ^~~~~~
-/usr/include/c++/8/functional:419:17: error: ‘_Indexes’ was not declared in this scope
-    _Index_tuple<_Indexes...>) volatile
-                 ^~~~~~~~
-/usr/include/c++/8/functional:419:17: note: suggested alternative: ‘rindex’
-    _Index_tuple<_Indexes...>) volatile
-                 ^~~~~~~~
-                 rindex
-/usr/include/c++/8/functional:419:25: error: expected parameter pack before ‘...’
-    _Index_tuple<_Indexes...>) volatile
-                         ^~~
-/usr/include/c++/8/functional:419:28: error: template argument 1 is invalid
-    _Index_tuple<_Indexes...>) volatile
-                            ^
-/usr/include/c++/8/functional:427:58: error: ‘std::size_t’ has not been declared
-       template<typename _Result, typename... _Args, std::size_t... _Indexes>
-                                                          ^~~~~~
-/usr/include/c++/8/functional:430:19: error: ‘_Indexes’ was not declared in this scope
-      _Index_tuple<_Indexes...>) const volatile
-                   ^~~~~~~~
-/usr/include/c++/8/functional:430:19: note: suggested alternative: ‘rindex’
-      _Index_tuple<_Indexes...>) const volatile
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional:430:27: error: expected parameter pack before ‘...’
-      _Index_tuple<_Indexes...>) const volatile
-                           ^~~
-/usr/include/c++/8/functional:430:30: error: template argument 1 is invalid
-      _Index_tuple<_Indexes...>) const volatile
-                              ^
-/usr/include/c++/8/functional: In member function ‘_Result std::_Bind<_Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int)’:
-/usr/include/c++/8/functional:401:36: error: ‘_Indexes’ was not declared in this scope
-        _Mu<_Bound_args>()(std::get<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-/usr/include/c++/8/functional:401:36: note: suggested alternative: ‘rindex’
-        _Mu<_Bound_args>()(std::get<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-                                    rindex
-/usr/include/c++/8/functional: In member function ‘_Result std::_Bind<_Functor(_Bound_args ...)>::__call_c(std::tuple<_Args2 ...>&&, int) const’:
-/usr/include/c++/8/functional:411:36: error: ‘_Indexes’ was not declared in this scope
-        _Mu<_Bound_args>()(std::get<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-/usr/include/c++/8/functional:411:36: note: suggested alternative: ‘rindex’
-        _Mu<_Bound_args>()(std::get<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-                                    rindex
-/usr/include/c++/8/functional: In member function ‘_Result std::_Bind<_Functor(_Bound_args ...)>::__call_v(std::tuple<_Args2 ...>&&, int) volatile’:
-/usr/include/c++/8/functional:422:27: error: ‘__volget’ was not declared in this scope
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                           ^~~~~~~~
-/usr/include/c++/8/functional:422:27: note: suggested alternative: ‘__void_t’
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                           ^~~~~~~~
-                           __void_t
-/usr/include/c++/8/functional:422:36: error: ‘_Indexes’ was not declared in this scope
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-/usr/include/c++/8/functional:422:36: note: suggested alternative: ‘rindex’
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-                                    rindex
-/usr/include/c++/8/functional: In member function ‘_Result std::_Bind<_Functor(_Bound_args ...)>::__call_c_v(std::tuple<_Args2 ...>&&, int) const volatile’:
-/usr/include/c++/8/functional:433:27: error: ‘__volget’ was not declared in this scope
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                           ^~~~~~~~
-/usr/include/c++/8/functional:433:27: note: suggested alternative: ‘__void_t’
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                           ^~~~~~~~
-                           __void_t
-/usr/include/c++/8/functional:433:36: error: ‘_Indexes’ was not declared in this scope
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-/usr/include/c++/8/functional:433:36: note: suggested alternative: ‘rindex’
-        _Mu<_Bound_args>()(__volget<_Indexes>(_M_bound_args), __args)...
-                                    ^~~~~~~~
-                                    rindex
-/usr/include/c++/8/functional: At global scope:
-/usr/include/c++/8/functional:552:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:554:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:554:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:554:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                        ^~~
-/usr/include/c++/8/functional:554:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                           ^
-/usr/include/c++/8/functional:561:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:563:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:563:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:563:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                        ^~~
-/usr/include/c++/8/functional:563:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>)
-                                                           ^
-/usr/include/c++/8/functional:570:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:572:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:572:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:572:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                        ^~~
-/usr/include/c++/8/functional:572:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                           ^
-/usr/include/c++/8/functional:579:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:581:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:581:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:581:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                        ^~~
-/usr/include/c++/8/functional:581:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) const
-                                                           ^
-/usr/include/c++/8/functional:588:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:590:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:590:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:590:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                        ^~~
-/usr/include/c++/8/functional:590:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                           ^
-/usr/include/c++/8/functional:597:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:599:48: error: ‘_Indexes’ was not declared in this scope
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                ^~~~~~~~
-/usr/include/c++/8/functional:599:48: note: suggested alternative: ‘rindex’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                ^~~~~~~~
-                                                rindex
-/usr/include/c++/8/functional:599:56: error: expected parameter pack before ‘...’
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                        ^~~
-/usr/include/c++/8/functional:599:59: error: template argument 1 is invalid
-  __call(tuple<_Args...>&& __args, _Index_tuple<_Indexes...>) volatile
-                                                           ^
-/usr/include/c++/8/functional:606:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:609:22: error: ‘_Indexes’ was not declared in this scope
-         _Index_tuple<_Indexes...>) const volatile
-                      ^~~~~~~~
-/usr/include/c++/8/functional:609:22: note: suggested alternative: ‘rindex’
-         _Index_tuple<_Indexes...>) const volatile
-                      ^~~~~~~~
-                      rindex
-/usr/include/c++/8/functional:609:30: error: expected parameter pack before ‘...’
-         _Index_tuple<_Indexes...>) const volatile
-                              ^~~
-/usr/include/c++/8/functional:609:33: error: template argument 1 is invalid
-         _Index_tuple<_Indexes...>) const volatile
-                                 ^
-/usr/include/c++/8/functional:616:55: error: ‘std::size_t’ has not been declared
-       template<typename _Res, typename... _Args, std::size_t... _Indexes>
-                                                       ^~~~~~
-/usr/include/c++/8/functional:619:22: error: ‘_Indexes’ was not declared in this scope
-         _Index_tuple<_Indexes...>) const volatile
-                      ^~~~~~~~
-/usr/include/c++/8/functional:619:22: note: suggested alternative: ‘rindex’
-         _Index_tuple<_Indexes...>) const volatile
-                      ^~~~~~~~
-                      rindex
-/usr/include/c++/8/functional:619:30: error: expected parameter pack before ‘...’
-         _Index_tuple<_Indexes...>) const volatile
-                              ^~~
-/usr/include/c++/8/functional:619:33: error: template argument 1 is invalid
-         _Index_tuple<_Indexes...>) const volatile
-                                 ^
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__disable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int)’:
-/usr/include/c++/8/functional:557:19: error: ‘_Indexes’ was not declared in this scope
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:557:19: note: suggested alternative: ‘rindex’
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__enable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int)’:
-/usr/include/c++/8/functional:566:19: error: ‘_Indexes’ was not declared in this scope
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:566:19: note: suggested alternative: ‘rindex’
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__disable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) const’:
-/usr/include/c++/8/functional:575:19: error: ‘_Indexes’ was not declared in this scope
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:575:19: note: suggested alternative: ‘rindex’
-         (std::get<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__enable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) const’:
-/usr/include/c++/8/functional:584:19: error: ‘_Indexes’ was not declared in this scope
-         (std::get<_Indexes>(_M_bound_args),  __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:584:19: note: suggested alternative: ‘rindex’
-         (std::get<_Indexes>(_M_bound_args),  __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__disable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) volatile’:
-/usr/include/c++/8/functional:593:10: error: ‘__volget’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-/usr/include/c++/8/functional:593:10: note: suggested alternative: ‘__void_t’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-          __void_t
-/usr/include/c++/8/functional:593:19: error: ‘_Indexes’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:593:19: note: suggested alternative: ‘rindex’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__enable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) volatile’:
-/usr/include/c++/8/functional:602:10: error: ‘__volget’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-/usr/include/c++/8/functional:602:10: note: suggested alternative: ‘__void_t’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-          __void_t
-/usr/include/c++/8/functional:602:19: error: ‘_Indexes’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:602:19: note: suggested alternative: ‘rindex’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__disable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) const volatile’:
-/usr/include/c++/8/functional:612:10: error: ‘__volget’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-/usr/include/c++/8/functional:612:10: note: suggested alternative: ‘__void_t’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-          __void_t
-/usr/include/c++/8/functional:612:19: error: ‘_Indexes’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:612:19: note: suggested alternative: ‘rindex’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-/usr/include/c++/8/functional: In member function ‘std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__enable_if_void<_Res> std::_Bind_result<_Result, _Functor(_Bound_args ...)>::__call(std::tuple<_Args2 ...>&&, int) const volatile’:
-/usr/include/c++/8/functional:622:10: error: ‘__volget’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-/usr/include/c++/8/functional:622:10: note: suggested alternative: ‘__void_t’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-          ^~~~~~~~
-          __void_t
-/usr/include/c++/8/functional:622:19: error: ‘_Indexes’ was not declared in this scope
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-/usr/include/c++/8/functional:622:19: note: suggested alternative: ‘rindex’
-         (__volget<_Indexes>(_M_bound_args), __args)...);
-                   ^~~~~~~~
-                   rindex
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qregion.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qevent.h:45,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QKeyEvent:1,
-                 from gui-main.cpp:9:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h: At global scope:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:157:34: error: declaration of ‘operator>>’ as non-function
-     QDataStream &operator>>(std::nullptr_t &ptr) { ptr = nullptr; return *this; }
-                                  ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:157:26: error: expected ‘;’ at end of member declaration
-     QDataStream &operator>>(std::nullptr_t &ptr) { ptr = nullptr; return *this; }
-                          ^~
-                            ;
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:157:43: error: expected ‘)’ before ‘&’ token
-     QDataStream &operator>>(std::nullptr_t &ptr) { ptr = nullptr; return *this; }
-                            ~              ^~
-                                           )
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:173:43: error: declaration of ‘operator<<’ as non-function
-     QDataStream &operator<<(std::nullptr_t) { return *this; }
-                                           ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:173:26: error: expected ‘;’ at end of member declaration
-     QDataStream &operator<<(std::nullptr_t) { return *this; }
-                          ^~
-                            ;
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:173:61: error: invalid use of ‘::’
-     QDataStream &operator<<(std::nullptr_t) { return *this; }
-                                                             ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qdatastream.h:173:61: error: expected ‘;’ at end of member declaration
-     QDataStream &operator<<(std::nullptr_t) { return *this; }
-                                                             ^
-                                                              ;
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:317:51: error: invalid use of ‘::’
-     Q_DECL_CONSTEXPR QSharedPointer(std::nullptr_t) Q_DECL_NOTHROW : value(nullptr), d(nullptr) { }
-                                                   ^
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:317:51: error: expected ‘;’ at end of member declaration
-     Q_DECL_CONSTEXPR QSharedPointer(std::nullptr_t) Q_DECL_NOTHROW : value(nullptr), d(nullptr) { }
-                                                   ^
-                                                    ;
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:105,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:317:53: error: expected unqualified-id before ‘noexcept’
-     Q_DECL_CONSTEXPR QSharedPointer(std::nullptr_t) Q_DECL_NOTHROW : value(nullptr), d(nullptr) { }
-                                                     ^~~~~~~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:328:34: error: expected ‘)’ before ‘,’ token
-     QSharedPointer(std::nullptr_t, Deleter) : value(nullptr), d(nullptr) { }
-                   ~              ^
-                                  )
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:785:59: error: ‘std::nullptr_t’ has not been declared
- inline bool operator==(const QSharedPointer<T> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                           ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:791:59: error: ‘std::nullptr_t’ has not been declared
- inline bool operator!=(const QSharedPointer<T> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                           ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:797:29: error: declaration of ‘operator==’ as non-function
- inline bool operator==(std::nullptr_t, const QSharedPointer<T> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:797:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:797:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:797:40: error: expected primary-expression before ‘const’
- inline bool operator==(std::nullptr_t, const QSharedPointer<T> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:803:29: error: declaration of ‘operator!=’ as non-function
- inline bool operator!=(std::nullptr_t, const QSharedPointer<T> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:803:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:803:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:803:40: error: expected primary-expression before ‘const’
- inline bool operator!=(std::nullptr_t, const QSharedPointer<T> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:809:57: error: ‘std::nullptr_t’ has not been declared
- inline bool operator==(const QWeakPointer<T> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:815:57: error: ‘std::nullptr_t’ has not been declared
- inline bool operator!=(const QWeakPointer<T> &lhs, std::nullptr_t) Q_DECL_NOTHROW
-                                                         ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:821:29: error: declaration of ‘operator==’ as non-function
- inline bool operator==(std::nullptr_t, const QWeakPointer<T> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:821:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:821:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:821:40: error: expected primary-expression before ‘const’
- inline bool operator==(std::nullptr_t, const QWeakPointer<T> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:827:29: error: declaration of ‘operator!=’ as non-function
- inline bool operator!=(std::nullptr_t, const QWeakPointer<T> &rhs) Q_DECL_NOTHROW
-                             ^~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:827:29: error: ‘nullptr_t’ is not a member of ‘std’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:827:29: note: suggested alternative:
-In file included from /usr/include/c++/8/bits/cxxabi_init_exception.h:38,
-                 from /usr/include/c++/8/bits/exception_ptr.h:38,
-                 from /usr/include/c++/8/exception:143,
-                 from /usr/include/c++/8/ios:39,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/lib/gcc/x86_64-linux-gnu/8/include/stddef.h:444:29: note:   ‘nullptr_t’
-   typedef decltype(nullptr) nullptr_t;
-                             ^~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qfont.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtextdocument.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QTextDocument:1,
-                 from gui-main.cpp:10:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:827:40: error: expected primary-expression before ‘const’
- inline bool operator!=(std::nullptr_t, const QWeakPointer<T> &rhs) Q_DECL_NOTHROW
-                                        ^~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qbrush.h:51,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qpalette.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qwidget.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qframe.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qabstractscrollarea.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtextedit.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QTextEdit:1,
-                 from gui-main.cpp:11:
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qimage.h:220:5: error: ‘qsizetype’ does not name a type; did you mean ‘iswctype’?
-     qsizetype sizeInBytes() const;
-     ^~~~~~~~~
-     iswctype
-gui-main.cpp: In member function ‘void command_window::accept(const string&)’:
-gui-main.cpp:135:11: warning: unused variable ‘status’ [-Wunused-variable]
-       int status = parse_and_execute (line);
-           ^~~~~~
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’:
-/usr/include/c++/8/system_error:189:40:   required from here
-/usr/include/c++/8/bits/basic_string.h:552:24: error: ‘class std::__cxx11::basic_string<char>’ has no member named ‘_M_allocated_capacity’; did you mean ‘_S_local_capacity’?
-      _M_capacity(__str._M_allocated_capacity);
-                  ~~~~~~^~~~~~~~~~~~~~~~~~~~~
-                  _S_local_capacity
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’:
-/usr/include/c++/8/system_error:351:50:   required from here
-/usr/include/c++/8/bits/basic_string.h:6007:33: error: ‘class std::__cxx11::basic_string<char>’ has no member named ‘size’
-       const auto __size = __lhs.size() + __rhs.size();
-                           ~~~~~~^~~~
-/usr/include/c++/8/bits/basic_string.h:6007:48: error: ‘class std::__cxx11::basic_string<char>’ has no member named ‘size’
-       const auto __size = __lhs.size() + __rhs.size();
-                                          ~~~~~~^~~~
-/usr/include/c++/8/bits/basic_string.h:6008:43: error: ‘class std::__cxx11::basic_string<char>’ has no member named ‘capacity’
-       const bool __cond = (__size > __lhs.capacity()
-                                     ~~~~~~^~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:6009:26: error: ‘class std::__cxx11::basic_string<char>’ has no member named ‘capacity’
-       && __size <= __rhs.capacity());
-                    ~~~~~~^~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:6010:32: error: no matching function for call to ‘std::__cxx11::basic_string<char>::insert(int, std::__cxx11::basic_string<char>&)’
-       return __cond ? std::move(__rhs.insert(0, __lhs))
-                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:1577:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-         insert(const_iterator __p, _InputIterator __beg, _InputIterator __end)
-         ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1577:9: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/bits/basic_string.h:6010:32: note:   candidate expects 3 arguments, 2 provided
-       return __cond ? std::move(__rhs.insert(0, __lhs))
-                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:1611:7: note: candidate: ‘void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*]’
-       insert(iterator __p, initializer_list<_CharT> __l)
-       ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1611:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string<char>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:1738:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       insert(__const_iterator __p, _CharT __c)
-       ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1738:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’:
-/usr/include/c++/8/system_error:354:51:   required from here
-/usr/include/c++/8/bits/basic_string.h:6018:23: error: no matching function for call to ‘std::__cxx11::basic_string<char>::insert(int, const char*&)’
-     { return std::move(__rhs.insert(0, __lhs)); }
-              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:1577:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-         insert(const_iterator __p, _InputIterator __beg, _InputIterator __end)
-         ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1577:9: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/bits/basic_string.h:6018:23: note:   candidate expects 3 arguments, 2 provided
-     { return std::move(__rhs.insert(0, __lhs)); }
-              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:1611:7: note: candidate: ‘void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*]’
-       insert(iterator __p, initializer_list<_CharT> __l)
-       ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1611:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string<char>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:1738:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       insert(__const_iterator __p, _CharT __c)
-       ^~~~~~
-/usr/include/c++/8/bits/basic_string.h:1738:7: note:   no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In instantiation of ‘QStringView::QStringView(const String&) [with String = QString; typename std::enable_if<(std::is_same<T, QString>::value || std::is_same<T, QStringRef>::value), bool>::type <anonymous> = 1]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:399:48:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:208:69: error: ‘qsizetype’ was not declared in this scope
-         : QStringView(str.isNull() ? nullptr : str.data(), qsizetype(str.size())) {}
-                                                            ~~~~~~~~~^~~~~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:208:69: note: suggested alternative: ‘iswctype’
-         : QStringView(str.isNull() ? nullptr : str.data(), qsizetype(str.size())) {}
-                                                            ~~~~~~~~~^~~~~~~~~~~~
-                                                            iswctype
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1384:12:   required from here
-/usr/include/c++/8/bits/basic_string.h:552:24: error: ‘class std::__cxx11::basic_string<wchar_t>’ has no member named ‘_M_allocated_capacity’; did you mean ‘_S_local_capacity’?
-      _M_capacity(__str._M_allocated_capacity);
-                  ~~~~~~^~~~~~~~~~~~~~~~~~~~~
-                  _S_local_capacity
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1405:12:   required from here
-/usr/include/c++/8/bits/basic_string.h:552:24: error: ‘class std::__cxx11::basic_string<char32_t>’ has no member named ‘_M_allocated_capacity’; did you mean ‘_S_local_capacity’?
-      _M_capacity(__str._M_allocated_capacity);
-                  ~~~~~~^~~~~~~~~~~~~~~~~~~~~
-                  _S_local_capacity
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h: In instantiation of ‘QStringView::QStringView(const String&) [with String = QStringRef; typename std::enable_if<(std::is_same<T, QString>::value || std::is_same<T, QStringRef>::value), bool>::type <anonymous> = 1]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1499:48:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:208:69: error: ‘qsizetype’ was not declared in this scope
-         : QStringView(str.isNull() ? nullptr : str.data(), qsizetype(str.size())) {}
-                                                            ~~~~~~~~~^~~~~~~~~~~~
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringview.h:208:69: note: suggested alternative: ‘iswctype’
-         : QStringView(str.isNull() ? nullptr : str.data(), qsizetype(str.size())) {}
-                                                            ~~~~~~~~~^~~~~~~~~~~~
-                                                            iswctype
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_M_dispose() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’:
-/usr/include/c++/8/bits/basic_string.h:657:9:   required from ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::~basic_string() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-/usr/include/c++/8/system_error:189:40:   required from here
-/usr/include/c++/8/bits/basic_string.h:221:15: error: using invalid field ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity’
-    _M_destroy(_M_allocated_capacity);
-               ^~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_M_dispose() [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’:
-/usr/include/c++/8/bits/basic_string.h:657:9:   required from ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::~basic_string() [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; _Alloc = std::allocator<wchar_t>]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1374:18:   required from here
-/usr/include/c++/8/bits/basic_string.h:221:15: error: using invalid field ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity’
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_M_dispose() [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’:
-/usr/include/c++/8/bits/basic_string.h:657:9:   required from ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::~basic_string() [with _CharT = char32_t; _Traits = std::char_traits<char32_t>; _Alloc = std::allocator<char32_t>]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:1402:48:   required from here
-/usr/include/c++/8/bits/basic_string.h:221:15: error: using invalid field ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity’
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h: In instantiation of ‘void QList<T>::node_construct(QList<T>::Node*, const T&) [with T = QString]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:584:13:   required from ‘void QList<T>::append(const T&) [with T = QString]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringlist.h:104:61:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:436:39: error: no matching function for call to ‘operator new(sizetype, QList<QString>::Node*&)’
-     else if (QTypeInfo<T>::isComplex) new (n) T(t);
-                                       ^~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h: In instantiation of ‘void QList<T>::node_copy(QList<T>::Node*, QList<T>::Node*, QList<T>::Node*) [with T = QString]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:813:13:   required from ‘QList<T>::QList(const QList<T>&) [with T = QString]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qstringlist.h:105:67:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:475:17: error: no matching function for call to ‘operator new(sizetype, QList<QString>::Node*&)’
-                 new (current) T(*reinterpret_cast<T*>(src));
-                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlocale.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qguiapplication.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h: In instantiation of ‘QHash<K, V>::Node* QHash<K, V>::createNode(uint, const Key&, const T&, QHash<K, V>::Node**) [with Key = QString; T = QVariant; QHash<K, V>::Node = QHashNode<QString, QVariant>; uint = unsigned int]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:793:21:   required from ‘QHash<K, V>::iterator QHash<K, V>::insertMulti(const Key&, const T&) [with Key = QString; T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:805:66:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:560:18: error: no matching function for call to ‘operator new(sizetype, void*)’
-     Node *node = new (d->allocateNode(alignOfNode())) Node(akey, avalue, ah, *anextNode);
-                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlocale.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qguiapplication.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h: In instantiation of ‘QMapData<Key, T>::Node* QMapData<Key, T>::createNode(const Key&, const T&, QMapData<Key, T>::Node*, bool) [with Key = QString; T = QVariant; QMapData<Key, T>::Node = QMapNode<QString, QVariant>]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:809:11:   required from ‘QMap<K, V>::iterator QMap<K, V>::insertMulti(const Key&, const T&) [with Key = QString; T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:821:66:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:228:13: error: no matching function for call to ‘operator new(sizetype, QString*)’
-             new (&n->key) Key(k);
-             ^~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:230:17: error: no matching function for call to ‘operator new(sizetype, QVariant*)’
-                 new (&n->value) T(v);
-                 ^~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qevent.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QKeyEvent:1,
-                 from gui-main.cpp:9:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘void QVector<T>::copyConstruct(const T*, const T*, T*) [with T = QPoint]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:370:13:   required from ‘QVector<T>::QVector(const QVector<T>&) [with T = QPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qpolygon.h:62:79:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:339:13: error: no matching function for call to ‘operator new(sizetype, QPoint*)’
-             new (dstFrom++) T(*srcFrom++);
-             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘void QVector<T>::defaultConstruct(T*, T*) [with T = QPoint]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:491:9:   required from ‘QVector<T>::QVector(int) [with T = QPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qpolygon.h:106:61:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:327:13: error: no matching function for call to ‘operator new(sizetype, QPoint*)’
-             new (from++) T();
-             ^~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘void QVector<T>::copyConstruct(const T*, const T*, T*) [with T = QPointF]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:370:13:   required from ‘QVector<T>::QVector(const QVector<T>&) [with T = QPointF]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qpolygon.h:147:82:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:339:13: error: no matching function for call to ‘operator new(sizetype, QPointF*)’
-             new (dstFrom++) T(*srcFrom++);
-             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘void QVector<T>::defaultConstruct(T*, T*) [with T = QPointF]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:491:9:   required from ‘QVector<T>::QVector(int) [with T = QPointF]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qpolygon.h:185:64:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:327:13: error: no matching function for call to ‘operator new(sizetype, QPointF*)’
-             new (from++) T();
-             ^~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: In instantiation of ‘static void* QtMetaTypePrivate::QMetaTypeFunctionHelper<T, Accepted>::Construct(void*, const void*) [with T = QtMetaTypePrivate::QSequentialIterableImpl; bool Accepted = true]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1719:53:   required from ‘int qRegisterNormalizedMetaType(const QByteArray&, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QSequentialIterableImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QSequentialIterableImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1749:42:   required from ‘int qRegisterMetaType(const char*, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QSequentialIterableImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QSequentialIterableImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2250:1:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:776:20: error: no matching function for call to ‘operator new(sizetype, void*&)’
-             return new (where) T(*static_cast<const T*>(t));
-                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:777:16: error: no matching function for call to ‘operator new(sizetype, void*&)’
-         return new (where) T;
-                ^~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: In instantiation of ‘static void* QtMetaTypePrivate::QMetaTypeFunctionHelper<T, Accepted>::Construct(void*, const void*) [with T = QtMetaTypePrivate::QAssociativeIterableImpl; bool Accepted = true]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1719:53:   required from ‘int qRegisterNormalizedMetaType(const QByteArray&, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QAssociativeIterableImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QAssociativeIterableImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1749:42:   required from ‘int qRegisterMetaType(const char*, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QAssociativeIterableImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QAssociativeIterableImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2251:1:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:776:20: error: no matching function for call to ‘operator new(sizetype, void*&)’
-             return new (where) T(*static_cast<const T*>(t));
-                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:777:16: error: no matching function for call to ‘operator new(sizetype, void*&)’
-         return new (where) T;
-                ^~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: In instantiation of ‘static void* QtMetaTypePrivate::QMetaTypeFunctionHelper<T, Accepted>::Construct(void*, const void*) [with T = QtMetaTypePrivate::QPairVariantInterfaceImpl; bool Accepted = true]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1719:53:   required from ‘int qRegisterNormalizedMetaType(const QByteArray&, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QPairVariantInterfaceImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QPairVariantInterfaceImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1749:42:   required from ‘int qRegisterMetaType(const char*, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QtMetaTypePrivate::QPairVariantInterfaceImpl; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QtMetaTypePrivate::QPairVariantInterfaceImpl, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2252:1:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:776:20: error: no matching function for call to ‘operator new(sizetype, void*&)’
-             return new (where) T(*static_cast<const T*>(t));
-                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:777:16: error: no matching function for call to ‘operator new(sizetype, void*&)’
-         return new (where) T;
-                ^~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h: In instantiation of ‘void QList<T>::node_copy(QList<T>::Node*, QList<T>::Node*, QList<T>::Node*) [with T = QVariant]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:788:9:   required from ‘void QList<T>::detach_helper(int) [with T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:572:13:   required from ‘void QList<T>::reserve(int) [with T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:786:38:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:475:17: error: no matching function for call to ‘operator new(sizetype, QList<QVariant>::Node*&)’
-                 new (current) T(*reinterpret_cast<T*>(src));
-                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h: In instantiation of ‘void QList<T>::node_construct(QList<T>::Node*, const T&) [with T = QVariant]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:584:13:   required from ‘void QList<T>::append(const T&) [with T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:386:7:   required from ‘QList<T>& QList<T>::operator<<(const T&) [with T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:788:27:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:436:39: error: no matching function for call to ‘operator new(sizetype, QList<QVariant>::Node*&)’
-     else if (QTypeInfo<T>::isComplex) new (n) T(t);
-                                       ^~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: In instantiation of ‘static void* QtMetaTypePrivate::QMetaTypeFunctionHelper<T, Accepted>::Construct(void*, const void*) [with T = QPair<QVariant, QVariant>; bool Accepted = true]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1719:53:   required from ‘int qRegisterNormalizedMetaType(const QByteArray&, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QPair<QVariant, QVariant>; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QPair<QVariant, QVariant>, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:2139:1:   required from ‘static int QMetaTypeId<QPair<T1, T2> >::qt_metatype_id() [with T = QVariant; U = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1634:96:   required from ‘static constexpr int QMetaTypeId2<T>::qt_metatype_id() [with T = QPair<QVariant, QVariant>]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1770:43:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:776:20: error: no matching function for call to ‘operator new(sizetype, void*&)’
-             return new (where) T(*static_cast<const T*>(t));
-                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:777:16: error: no matching function for call to ‘operator new(sizetype, void*&)’
-         return new (where) T;
-                ^~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:49,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h: In instantiation of ‘void QList<T>::node_copy(QList<T>::Node*, QList<T>::Node*, QList<T>::Node*) [with T = QTouchEvent::TouchPoint]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:813:13:   required from ‘QList<T>::QList(const QList<T>&) [with T = QTouchEvent::TouchPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:503:18:   required from ‘QList<T>& QList<T>::operator=(const QList<T>&) [with T = QTouchEvent::TouchPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qevent.h:962:101:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:475:17: error: no matching function for call to ‘operator new(sizetype, QList<QTouchEvent::TouchPoint>::Node*&)’
-                 new (current) T(*reinterpret_cast<T*>(src));
-                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:54,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:46,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:44,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h: In instantiation of ‘static void* QtMetaTypePrivate::QMetaTypeFunctionHelper<T, Accepted>::Construct(void*, const void*) [with T = QTextOption::Tab; bool Accepted = true]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1719:53:   required from ‘int qRegisterNormalizedMetaType(const QByteArray&, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QTextOption::Tab; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QTextOption::Tab, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:1749:42:   required from ‘int qRegisterMetaType(const char*, T*, typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType) [with T = QTextOption::Tab; typename QtPrivate::MetaTypeDefinedHelper<T, (QMetaTypeId2<T>::Defined && (! QMetaTypeId2<T>::IsBuiltIn))>::DefinedType = QtPrivate::MetaTypeDefinedHelper<QTextOption::Tab, true>::DefinedType]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qtextoption.h:167:1:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:776:20: error: no matching function for call to ‘operator new(sizetype, void*&)’
-             return new (where) T(*static_cast<const T*>(t));
-                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:777:16: error: no matching function for call to ‘operator new(sizetype, void*&)’
-         return new (where) T;
-                ^~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’:
-/usr/include/c++/8/sstream:179:10:   required from ‘std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__string_type std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__string_type = std::__cxx11::basic_string<char>]’
-/usr/include/c++/8/sstream:639:33:   required from ‘std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::__string_type std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::__string_type = std::__cxx11::basic_string<char>]’
-gui-main.cpp:77:56:   required from here
-/usr/include/c++/8/bits/basic_string.h:676:18: error: using invalid field ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity’
-       _M_destroy(_M_allocated_capacity);
-                  ^~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/8/bits/basic_string.h:686:18: error: using invalid field ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity’
-       _M_destroy(_M_allocated_capacity);
-                  ^~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:48,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtCore/qlocale.h:43,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/qguiapplication.h:47,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1,
-                 from gui-main.cpp:8:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h: In instantiation of ‘static void QHash<K, V>::duplicateNode(QHashData::Node*, void*) [with Key = QString; T = QVariant]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:597:36:   required from ‘void QHash<K, V>::detach_helper() [with Key = QString; T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:275:51:   required from ‘void QHash<K, V>::detach() [with Key = QString; T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:880:5:   required from ‘void QHash<K, V>::reserve(int) [with Key = QString; T = QVariant]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvariant.h:803:38:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:553:5: error: no matching function for call to ‘operator new(sizetype, void*&)’
-     new (newNode) Node(concreteNode->key, concreteNode->value, concreteNode->h, nullptr);
-     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qevent.h:52,
-                 from /usr/include/x86_64-linux-gnu/qt5/QtGui/QKeyEvent:1,
-                 from gui-main.cpp:9:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h: In instantiation of ‘void QVector<T>::reallocData(int, int, QArrayData::AllocationOptions) [with T = QPoint; QArrayData::AllocationOptions = QFlags<QArrayData::AllocationOption>]’:
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:389:13:   required from ‘void QVector<T>::detach() [with T = QPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:127:24:   required from ‘T* QVector<T>::data() [with T = QPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:437:16:   required from ‘T& QVector<T>::operator[](int) [with T = QPoint]’
-/usr/include/x86_64-linux-gnu/qt5/QtGui/qpolygon.h:125:16:   required from here
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:580:33: error: no matching function for call to ‘operator new(sizetype, QPoint*)’
-                                 new (dst++) T(*srcBegin++);
-                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:583:33: error: no matching function for call to ‘operator new(sizetype, QPoint*)’
-                                 new (dst++) T(std::move(*srcBegin++));
-                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-/usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:606:33: error: no matching function for call to ‘operator new(sizetype, QPoint*)’
-                                 new (dst++) T();
-                                 ^~~~~~~~~~~~~~~
-<built-in>: note: candidate: ‘void* operator new(long unsigned int)’
-<built-in>: note:   candidate expects 1 argument, 2 provided
-In file included from /usr/include/c++/8/string:52,
-                 from /usr/include/c++/8/bits/locale_classes.h:40,
-                 from /usr/include/c++/8/bits/ios_base.h:41,
-                 from /usr/include/c++/8/ios:42,
-                 from /usr/include/c++/8/istream:38,
-                 from /usr/include/c++/8/sstream:38,
-                 from gui-main.cpp:2:
-/usr/include/c++/8/bits/basic_string.h: In instantiation of ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT*, _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’:
-/usr/include/c++/8/bits/basic_string.h:1471:63:   required from ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::assign(_InputIterator, _InputIterator) [with _InputIterator = char*; <template-parameter-2-2> = void; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-/usr/include/c++/8/sstream:174:8:   required from ‘std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__string_type std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__string_type = std::__cxx11::basic_string<char>]’
-/usr/include/c++/8/sstream:639:33:   required from ‘std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::__string_type std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::str() const [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_ostringstream<_CharT, _Traits, _Alloc>::__string_type = std::__cxx11::basic_string<char>]’
-gui-main.cpp:77:56:   required from here
-/usr/include/c++/8/bits/basic_string.h:2121:26: error: no matching function for call to ‘std::__cxx11::basic_string<char>::replace(long int, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >::difference_type, char*&, long int)’
-         __k1, __k2 - __k1);
-                          ^
-/usr/include/c++/8/bits/basic_string.h:1994:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       replace(__const_iterator __i1, __const_iterator __i2,
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:1994:7: note:   candidate expects 3 arguments, 4 provided
-/usr/include/c++/8/bits/basic_string.h:2036:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       replace(__const_iterator __i1, __const_iterator __i2, const _CharT* __s)
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2036:7: note:   candidate expects 3 arguments, 4 provided
-/usr/include/c++/8/bits/basic_string.h:2084:9: note: candidate: ‘template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
-         replace(const_iterator __i1, const_iterator __i2,
-         ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2084:9: note:   template argument deduction/substitution failed:
-/usr/include/c++/8/bits/basic_string.h:2121:26: note:   deduced conflicting types for parameter ‘_InputIterator’ (‘char*’ and ‘long int’)
-         __k1, __k2 - __k1);
-                          ^
-/usr/include/c++/8/bits/basic_string.h:2114:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT*, _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       replace(__const_iterator __i1, __const_iterator __i2,
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2114:7: note:   no known conversion for argument 1 from ‘long int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:2125:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, const _CharT*, const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       replace(__const_iterator __i1, __const_iterator __i2,
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2125:7: note:   no known conversion for argument 1 from ‘long int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:2136:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*]’
-       replace(__const_iterator __i1, __const_iterator __i2,
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2136:7: note:   no known conversion for argument 1 from ‘long int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:2147:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
-       replace(__const_iterator __i1, __const_iterator __i2,
-       ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2147:7: note:   no known conversion for argument 1 from ‘long int’ to ‘std::__cxx11::basic_string<char>::__const_iterator’ {aka ‘__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >’}
-/usr/include/c++/8/bits/basic_string.h:2172:21: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::replace(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]’
-       basic_string& replace(const_iterator __i1, const_iterator __i2,
-                     ^~~~~~~
-/usr/include/c++/8/bits/basic_string.h:2172:21: note:   candidate expects 3 arguments, 4 provided
-make: *** [calc-qt.mk:408: gui-main.o] Error 1
+bison -o parser.cpp parser.yy
+parser.yy:1.1-3: error: syntax error, unexpected identifier
+ beg// Infix notation calculator.
+ ^~~
+parser.yy:59.1-4: error: syntax error, unexpected identifier:
+ line    :     ';'
+ ^~~~
+parser.yy:68.1-3: error: syntax error, unexpected identifier:
+ exp     : NUM
+ ^~~
+parser.yy:118.3-202.0: error: syntax error, unexpected epilogue
+ %%
+   ^
+make: *** [Makefile:4: parser.cpp] Error 1
--- a/parse.h	Wed May 22 16:21:06 2019 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-#if ! defined (calc_parse_h)
-#define calc_parse_h 1
-
-namespace interpreter
-{
-  extern bool beg_of_stmt;
-
-  extern void parser_init (void);
-  extern void parser_fini (void);
-
-  extern int parse_and_execute (const std::string& line);
-
-  extern void emit_error (const char *msg);
-
-  extern void emit_result (double value);
-}
-
-#endif
--- a/parse.yy	Wed May 22 16:21:06 2019 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,220 +0,0 @@
-// Infix notation calculator.
-
-%{
-
-#define YYSTYPE double
-
-#include <iostream>
-
-#include <cctype>
-#include <cmath>
-#include <cstdio>
-#include <unistd.h>
-
-#include "main.h"
-#include "gui-main.h"
-#include "tty-main.h"
-#include "parse.h"
-
-namespace interpreter
-{
-  FILE *outfile = 0;
-  size_t bufptr = 0;
-  size_t chunk_size = 0;
-
-  const char *buf;
-  bool beg_of_stmt = true;
-
-  static int yylex (void);
-
-  static void debug_trace (const char *);
-}
-
-static void yyerror (char const *);
-
-%}
-
-%define api.push-pull push
-
-// Bison declarations.
-%token NUM
-%left '-' '+'
-%left '*' '/'
-%left NEG     // negation--unary minus
-%right '^'    // exponentiation
-
-%%
-
-input   : // empty
-          { }
-        | input line
-        | error
-          {
-            interpreter::debug_trace ("ABORT");
-            YYABORT;
-          }
-        ;
-
-line    :     ';'
-          { }
-        | exp ';'
-          {
-            interpreter::emit_result ($1);
-            interpreter::beg_of_stmt = true;
-          }
-;
-
-exp     : NUM
-          {
-            interpreter::debug_trace ("NUM");
-            $$ = $1;
-            interpreter::beg_of_stmt = false;
-          }
-        | exp '+' exp
-          {
-            interpreter::debug_trace ("ADD");
-            $$ = $1 + $3;
-            interpreter::beg_of_stmt = false;
-          }
-        | exp '-' exp
-          {
-            interpreter::debug_trace ("SUB");
-            $$ = $1 - $3;
-            interpreter::beg_of_stmt = false;
-          }
-        | exp '*' exp
-          {
-            interpreter::debug_trace ("MUL");
-            $$ = $1 * $3;
-            interpreter::beg_of_stmt = false;
-          }
-        | exp '/' exp
-          {
-            interpreter::debug_trace ("DIV");
-            $$ = $1 / $3;
-            interpreter::beg_of_stmt = false;
-          }
-        | '-' exp  %prec NEG
-          {
-            interpreter::debug_trace ("NEG");
-            $$ = -$2;
-            interpreter::beg_of_stmt = false;
-          }
-        | exp '^' exp
-          {
-            interpreter::debug_trace ("EXP");
-            $$ = std::pow ($1, $3);
-            interpreter::beg_of_stmt = false;
-          }
-        | '(' exp ')'
-          {
-            interpreter::debug_trace ("PAREN");
-            $$ = $2;
-            interpreter::beg_of_stmt = false;
-          }
-        ;
-
-%%
-
-namespace interpreter
-{
-  // The lexical analyzer returns a double floating point number on the
-  // stack and the token NUM, or the numeric code of the character read
-  // if not a number.  It skips all blanks and tabs, and returns -1 for
-  // end-of-input.
-
-  static int yylex (void)
-  {
-    int c;
-
-    if (bufptr >= chunk_size)
-      return -1;
-
-    // Skip white space.
-    while ((c = buf[bufptr++]) == ' ' || c == '\t' || c == '\n')
-      ;
-
-    // Process numbers.
-    if (c == '.' || isdigit (c))
-      {
-        int chars_read = 0;
-        bufptr--;
-        sscanf (&buf[bufptr], "%lf%n", &yylval, &chars_read);
-        bufptr += chars_read;
-        return NUM;
-      }
-
-    // Return a single char.
-    return c;
-  }
-
-  static yypstate *ps = 0;
-
-  void
-  parser_fini (void)
-  {
-    if (ps)
-      yypstate_delete (ps);
-
-    ps = 0;
-  }
-
-  void parser_init (void)
-  {
-    parser_fini ();
-
-    ps = yypstate_new ();
-  }
-
-  int parse_and_execute (const std::string& line)
-  {
-    bufptr = 0;
-    chunk_size = line.length ();
-    buf = line.c_str ();
-
-    int status;
-
-    do
-      {
-        ::yychar = yylex ();
-
-        if (::yychar < 0)
-          return -1;
-
-        status = yypush_parse (ps);
-      }
-    while (status == YYPUSH_MORE);
-
-    return -2;
-  }
-
-  void emit_result (double value)
-  {
-    // Simulate a delay in calculation.
-    sleep (1);
-
-    if (calc::tty_mode)
-      tty::emit_result (value);
-    else
-      gui::emit_result (value);
-  }
-
-  void emit_error (const char *msg)
-  {
-    if (calc::tty_mode)
-      tty::emit_error (msg);
-    else
-      gui::emit_error (msg);
-  }
-
-  void debug_trace (const char *msg)
-  {
-    if (calc::debug_mode)
-      std::cerr << msg << std::endl;
-  }
-}
-
-static void yyerror (char const *msg)
-{
-  interpreter::emit_error (msg);
-}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/parser.h	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,14 @@
+#if ! defined (calc_parse_h)
+#define calc_parse_h 1
+
+namespace parser
+{
+  extern bool beg_of_stmt;
+
+  extern void init (void);
+  extern void fini (void);
+
+  extern int parse_and_execute (const std::string& line);
+}
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/parser.yy	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,201 @@
+// Infix notation calculator.
+
+%{
+
+#define YYSTYPE double
+
+#include <iostream>
+#include <string>
+
+#include <cctype>
+#include <cmath>
+#include <cstdio>
+
+#include "interpreter.h"
+#include "main.h"
+#include "gui-main.h"
+#include "tty-main.h"
+#include "parser.h"
+
+namespace parser
+{
+  FILE *outfile = 0;
+  size_t bufptr = 0;
+  size_t chunk_size = 0;
+
+  const char *buf;
+  bool beg_of_stmt = true;
+
+  static int yylex (void);
+
+  static void debug_trace (const char *);
+}
+
+static void yyerror (char const *);
+
+%}
+
+%define api.push-pull push
+
+// Bison declarations.
+%token NUM
+%left '-' '+'
+%left '*' '/'
+%left NEG     // negation--unary minus
+%right '^'    // exponentiation
+
+%%
+
+input   : // empty
+          { }
+        | input line
+        | error
+          {
+            parser::debug_trace ("ABORT");
+            YYABORT;
+          }
+        ;
+
+line    :     ';'
+          { }
+        | exp ';'
+          {
+            interpreter::emit_result ($1);
+            parser::beg_of_stmt = true;
+          }
+;
+
+exp     : NUM
+          {
+            parser::debug_trace ("NUM");
+            $$ = $1;
+            parser::beg_of_stmt = false;
+          }
+        | exp '+' exp
+          {
+            parser::debug_trace ("ADD");
+            $$ = $1 + $3;
+            parser::beg_of_stmt = false;
+          }
+        | exp '-' exp
+          {
+            parser::debug_trace ("SUB");
+            $$ = $1 - $3;
+            parser::beg_of_stmt = false;
+          }
+        | exp '*' exp
+          {
+            parser::debug_trace ("MUL");
+            $$ = $1 * $3;
+            parser::beg_of_stmt = false;
+          }
+        | exp '/' exp
+          {
+            parser::debug_trace ("DIV");
+            $$ = $1 / $3;
+            parser::beg_of_stmt = false;
+          }
+        | '-' exp  %prec NEG
+          {
+            parser::debug_trace ("NEG");
+            $$ = -$2;
+            parser::beg_of_stmt = false;
+          }
+        | exp '^' exp
+          {
+            parser::debug_trace ("EXP");
+            $$ = std::pow ($1, $3);
+            parser::beg_of_stmt = false;
+          }
+        | '(' exp ')'
+          {
+            parser::debug_trace ("PAREN");
+            $$ = $2;
+            parser::beg_of_stmt = false;
+          }
+        ;
+
+%%
+
+namespace parser
+{
+  // The lexical analyzer returns a double floating point number on the
+  // stack and the token NUM, or the numeric code of the character read
+  // if not a number.  It skips all blanks and tabs, and returns -1 for
+  // end-of-input.
+
+  static int yylex (void)
+  {
+    int c;
+
+    if (bufptr >= chunk_size)
+      return -1;
+
+    // Skip white space.
+    while ((c = buf[bufptr++]) == ' ' || c == '\t' || c == '\n')
+      ;
+
+    // Process numbers.
+    if (c == '.' || isdigit (c))
+      {
+        int chars_read = 0;
+        bufptr--;
+        sscanf (&buf[bufptr], "%lf%n", &yylval, &chars_read);
+        bufptr += chars_read;
+        return NUM;
+      }
+
+    // Return a single char.
+    return c;
+  }
+
+  static yypstate *ps = 0;
+
+  void init (void)
+  {
+    fini ();
+
+    ps = yypstate_new ();
+  }
+
+  void fini (void)
+  {
+    if (ps)
+      yypstate_delete (ps);
+
+    ps = 0;
+  }
+
+  int parse_and_execute (const std::string& line)
+  {
+    bufptr = 0;
+    chunk_size = line.length ();
+    buf = line.c_str ();
+
+    int status;
+
+    do
+      {
+        ::yychar = yylex ();
+
+        if (::yychar < 0)
+          return -1;
+
+        status = yypush_parse (ps);
+      }
+    while (status == YYPUSH_MORE);
+
+    return -2;
+  }
+
+  void debug_trace (const char *msg)
+  {
+    if (calc::debug_mode)
+      std::cerr << msg << std::endl;
+  }
+}
+
+static void yyerror (char const *msg)
+{
+  interpreter::emit_error (msg);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qt-interpreter.cpp	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,92 @@
+#include <sstream>
+
+#include "gui-main.h"
+#include "interpreter.h"
+#include "qt-interpreter.h"
+
+#include <readline/readline.h>
+#include <readline/history.h>
+
+namespace calc
+{
+  static int getc (FILE *)
+  {
+    int tmp = gui::available_char;
+    gui::available_char = 0;
+    return tmp;
+  }
+
+  static void redisplay (void)
+  {
+    if (gui::calc_interaction_window)
+      gui::calc_interaction_window->redisplay ();
+  }
+
+  static void prep_term (int)
+  {
+  }
+
+  static void deprep_term (void)
+  {
+  }
+
+  static void accept_line (char *line)
+  {
+    if (gui::calc_interaction_window)
+      gui::calc_interaction_window->accept (line ? line : "");
+  }
+
+  static void display_completion_matches (char **matches, int num_matches,
+                                          int /* max_length */)
+  {
+    if (gui::calc_interaction_window)
+      {
+        std::ostringstream buf;
+
+        if (num_matches > 1)
+          buf << "\n";
+
+        for (int i = 1; i < num_matches; i++)
+          buf << matches[i] << "\n";
+
+        gui::calc_interaction_window->insert_at_end (buf.str ());
+
+        gui::calc_interaction_window->redisplay ();
+      }
+  }
+
+  static void readline_init (void)
+  {
+    rl_initialize ();
+
+    rl_getc_function = getc;
+    rl_redisplay_function = redisplay;
+    rl_prep_term_function = prep_term;
+    rl_deprep_term_function = deprep_term;
+    rl_completion_display_matches_hook = display_completion_matches;
+
+    rl_callback_handler_install (">> ", accept_line);
+  }
+
+  static void readline_fini (void)
+  {
+    rl_callback_handler_remove ();
+  }
+
+  qt_interpreter::qt_interpreter (void)
+  {
+    interpreter::init ();
+  }
+
+  qt_interpreter::~qt_interpreter (void)
+  {
+    interpreter::fini ();
+
+    readline_fini ();
+  }
+
+  void qt_interpreter::execute (void)
+  {
+    readline_init ();
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qt-interpreter.h	Wed May 22 17:30:46 2019 -0400
@@ -0,0 +1,28 @@
+#if ! defined (calc_qt_interpreter_h)
+#define calc_qt_interpreter_h 1
+
+#include <QObject>
+
+namespace calc
+{
+  class qt_interpreter : public QObject
+  {
+    Q_OBJECT
+
+  public:
+
+    qt_interpreter (void);
+
+    ~qt_interpreter (void);
+
+    qt_interpreter (const qt_interpreter&) = delete;
+
+    qt_interpreter& operator = (const qt_interpreter&) = delete;
+
+  public slots:
+
+    void execute (void);
+  };
+}
+
+#endif
--- a/tty-main.cpp	Wed May 22 16:21:06 2019 -0400
+++ b/tty-main.cpp	Wed May 22 17:30:46 2019 -0400
@@ -10,7 +10,8 @@
 #include "gui-main.h"
 #include "tty-main.h"
 
-#include "parse.h"
+#include "interpreter.h"
+#include "parser.h"
 
 namespace tty
 {
@@ -22,11 +23,11 @@
       << "Semicolon terminates statement.\n"
       << "GNU Readline available for history editing.\n" << std::endl;
 
-    interpreter::parser_init ();
+    interpreter::init ();
 
     for (;;)
       {
-        char *tmp = readline (interpreter::beg_of_stmt ? ">> " : "");
+        char *tmp = readline (parser::beg_of_stmt ? ">> " : "");
 
         if (! tmp)
           break;
@@ -47,7 +48,7 @@
           break;
       }
 
-    interpreter::parser_fini ();
+    interpreter::fini ();
 
     return 0;
   }