diff --git a/.vscode/settings.json b/.vscode/settings.json index 91367a8..bbabd9f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,6 +15,97 @@ "string": "cpp", "string_view": "cpp", "unordered_map": "cpp", - "unordered_set": "cpp" - } + "unordered_set": "cpp", + "bitset": "cpp", + "__locale": "cpp", + "__config": "cpp", + "__debug": "cpp", + "__errc": "cpp", + "__functional_base": "cpp", + "__mutex_base": "cpp", + "__node_handle": "cpp", + "__nullptr": "cpp", + "__split_buffer": "cpp", + "__sso_allocator": "cpp", + "__std_stream": "cpp", + "__threading_support": "cpp", + "__tuple": "cpp", + "any": "cpp", + "array": "cpp", + "atomic": "cpp", + "bit": "cpp", + "cctype": "cpp", + "charconv": "cpp", + "chrono": "cpp", + "clocale": "cpp", + "cmath": "cpp", + "codecvt": "cpp", + "compare": "cpp", + "complex": "cpp", + "condition_variable": "cpp", + "csignal": "cpp", + "cstdarg": "cpp", + "cstddef": "cpp", + "cstdint": "cpp", + "cstdio": "cpp", + "cstdlib": "cpp", + "cstring": "cpp", + "ctime": "cpp", + "cwchar": "cpp", + "cwctype": "cpp", + "deque": "cpp", + "exception": "cpp", + "coroutine": "cpp", + "forward_list": "cpp", + "fstream": "cpp", + "functional": "cpp", + "future": "cpp", + "initializer_list": "cpp", + "iomanip": "cpp", + "ios": "cpp", + "iosfwd": "cpp", + "iostream": "cpp", + "istream": "cpp", + "iterator": "cpp", + "limits": "cpp", + "list": "cpp", + "locale": "cpp", + "memory": "cpp", + "mutex": "cpp", + "new": "cpp", + "numeric": "cpp", + "optional": "cpp", + "ostream": "cpp", + "queue": "cpp", + "random": "cpp", + "ratio": "cpp", + "regex": "cpp", + "span": "cpp", + "sstream": "cpp", + "stack": "cpp", + "stdexcept": "cpp", + "streambuf": "cpp", + "strstream": "cpp", + "system_error": "cpp", + "tuple": "cpp", + "type_traits": "cpp", + "typeindex": "cpp", + "typeinfo": "cpp", + "utility": "cpp", + "valarray": "cpp", + "variant": "cpp", + "vector": "cpp", + "concepts": "cpp", + "memory_resource": "cpp", + "source_location": "cpp", + "format": "cpp", + "numbers": "cpp", + "semaphore": "cpp", + "shared_mutex": "cpp", + "stop_token": "cpp", + "thread": "cpp", + "cfenv": "cpp", + "cinttypes": "cpp" + }, + "C_Cpp.errorSquiggles": "disabled" } \ No newline at end of file diff --git a/CMakeCache.txt b/CMakeCache.txt index 80863bb..0fb51d0 100644 --- a/CMakeCache.txt +++ b/CMakeCache.txt @@ -193,8 +193,8 @@ CMAKE_STRIP:FILEPATH=/usr/bin/strip //Path to a program. CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND -//The CMake toolchain file -CMAKE_TOOLCHAIN_FILE:FILEPATH=/home/douwe/Projects/Screeps/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake +//No help, variable specified on the command line. +CMAKE_TOOLCHAIN_FILE:UNINITIALIZED=emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake //If this value is on, makefiles will be generated without the // .SILENT directive, and all commands will be echoed to the console diff --git a/CMakeFiles/Makefile2 b/CMakeFiles/Makefile2 index a7d3462..4440d81 100644 --- a/CMakeFiles/Makefile2 +++ b/CMakeFiles/Makefile2 @@ -98,12 +98,12 @@ screepsxx/clean: screepsxx/CMakeFiles/screepsxx.dir/clean CMakeFiles/app.dir/all: screepsxx/CMakeFiles/screepsxx.dir/all $(MAKE) $(MAKESILENT) -f CMakeFiles/app.dir/build.make CMakeFiles/app.dir/depend $(MAKE) $(MAKESILENT) -f CMakeFiles/app.dir/build.make CMakeFiles/app.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=1,2,3 "Built target app" + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=1,2,3,4 "Built target app" .PHONY : CMakeFiles/app.dir/all # Build rule for subdir invocation for target. CMakeFiles/app.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/douwe/Projects/Screeps/CMakeFiles 36 + $(CMAKE_COMMAND) -E cmake_progress_start /home/douwe/Projects/Screeps/CMakeFiles 37 $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/app.dir/all $(CMAKE_COMMAND) -E cmake_progress_start /home/douwe/Projects/Screeps/CMakeFiles 0 .PHONY : CMakeFiles/app.dir/rule @@ -124,7 +124,7 @@ CMakeFiles/app.dir/clean: screepsxx/CMakeFiles/screepsxx.dir/all: $(MAKE) $(MAKESILENT) -f screepsxx/CMakeFiles/screepsxx.dir/build.make screepsxx/CMakeFiles/screepsxx.dir/depend $(MAKE) $(MAKESILENT) -f screepsxx/CMakeFiles/screepsxx.dir/build.make screepsxx/CMakeFiles/screepsxx.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36 "Built target screepsxx" + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37 "Built target screepsxx" .PHONY : screepsxx/CMakeFiles/screepsxx.dir/all # Build rule for subdir invocation for target. diff --git a/CMakeFiles/app.dir/DependInfo.cmake b/CMakeFiles/app.dir/DependInfo.cmake index adc931b..efdb2e2 100644 --- a/CMakeFiles/app.dir/DependInfo.cmake +++ b/CMakeFiles/app.dir/DependInfo.cmake @@ -8,6 +8,7 @@ set(CMAKE_DEPENDS_LANGUAGES # The set of dependency files which are needed: set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/home/douwe/Projects/Screeps/src/harvester.cpp" "CMakeFiles/app.dir/src/harvester.cpp.o" "gcc" "CMakeFiles/app.dir/src/harvester.cpp.o.d" "/home/douwe/Projects/Screeps/src/loop.cpp" "CMakeFiles/app.dir/src/loop.cpp.o" "gcc" "CMakeFiles/app.dir/src/loop.cpp.o.d" "/home/douwe/Projects/Screeps/src/spawn.cpp" "CMakeFiles/app.dir/src/spawn.cpp.o" "gcc" "CMakeFiles/app.dir/src/spawn.cpp.o.d" ) diff --git a/CMakeFiles/app.dir/build.make b/CMakeFiles/app.dir/build.make index 3b8c034..6d9f6fd 100644 --- a/CMakeFiles/app.dir/build.make +++ b/CMakeFiles/app.dir/build.make @@ -69,11 +69,26 @@ include CMakeFiles/app.dir/progress.make # Include the compile flags for this target's objects. include CMakeFiles/app.dir/flags.make +CMakeFiles/app.dir/src/harvester.cpp.o: CMakeFiles/app.dir/flags.make +CMakeFiles/app.dir/src/harvester.cpp.o: CMakeFiles/app.dir/includes_CXX.rsp +CMakeFiles/app.dir/src/harvester.cpp.o: src/harvester.cpp +CMakeFiles/app.dir/src/harvester.cpp.o: CMakeFiles/app.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/app.dir/src/harvester.cpp.o" + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/em++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/app.dir/src/harvester.cpp.o -MF CMakeFiles/app.dir/src/harvester.cpp.o.d -o CMakeFiles/app.dir/src/harvester.cpp.o -c /home/douwe/Projects/Screeps/src/harvester.cpp + +CMakeFiles/app.dir/src/harvester.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/app.dir/src/harvester.cpp.i" + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/em++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/douwe/Projects/Screeps/src/harvester.cpp > CMakeFiles/app.dir/src/harvester.cpp.i + +CMakeFiles/app.dir/src/harvester.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/app.dir/src/harvester.cpp.s" + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/em++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/douwe/Projects/Screeps/src/harvester.cpp -o CMakeFiles/app.dir/src/harvester.cpp.s + CMakeFiles/app.dir/src/loop.cpp.o: CMakeFiles/app.dir/flags.make CMakeFiles/app.dir/src/loop.cpp.o: CMakeFiles/app.dir/includes_CXX.rsp CMakeFiles/app.dir/src/loop.cpp.o: src/loop.cpp CMakeFiles/app.dir/src/loop.cpp.o: CMakeFiles/app.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/app.dir/src/loop.cpp.o" + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/app.dir/src/loop.cpp.o" /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/em++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/app.dir/src/loop.cpp.o -MF CMakeFiles/app.dir/src/loop.cpp.o.d -o CMakeFiles/app.dir/src/loop.cpp.o -c /home/douwe/Projects/Screeps/src/loop.cpp CMakeFiles/app.dir/src/loop.cpp.i: cmake_force @@ -88,7 +103,7 @@ CMakeFiles/app.dir/src/spawn.cpp.o: CMakeFiles/app.dir/flags.make CMakeFiles/app.dir/src/spawn.cpp.o: CMakeFiles/app.dir/includes_CXX.rsp CMakeFiles/app.dir/src/spawn.cpp.o: src/spawn.cpp CMakeFiles/app.dir/src/spawn.cpp.o: CMakeFiles/app.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/app.dir/src/spawn.cpp.o" + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/app.dir/src/spawn.cpp.o" /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/em++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/app.dir/src/spawn.cpp.o -MF CMakeFiles/app.dir/src/spawn.cpp.o.d -o CMakeFiles/app.dir/src/spawn.cpp.o -c /home/douwe/Projects/Screeps/src/spawn.cpp CMakeFiles/app.dir/src/spawn.cpp.i: cmake_force @@ -101,12 +116,14 @@ CMakeFiles/app.dir/src/spawn.cpp.s: cmake_force # Object files for target app app_OBJECTS = \ +"CMakeFiles/app.dir/src/harvester.cpp.o" \ "CMakeFiles/app.dir/src/loop.cpp.o" \ "CMakeFiles/app.dir/src/spawn.cpp.o" # External object files for target app app_EXTERNAL_OBJECTS = +app.js: CMakeFiles/app.dir/src/harvester.cpp.o app.js: CMakeFiles/app.dir/src/loop.cpp.o app.js: CMakeFiles/app.dir/src/spawn.cpp.o app.js: CMakeFiles/app.dir/build.make @@ -114,7 +131,7 @@ app.js: screepsxx/libscreepsxx.a app.js: CMakeFiles/app.dir/linkLibs.rsp app.js: CMakeFiles/app.dir/objects1.rsp app.js: CMakeFiles/app.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX executable app.js" + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/home/douwe/Projects/Screeps/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX executable app.js" $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/app.dir/link.txt --verbose=$(VERBOSE) /usr/bin/cmake -E copy /home/douwe/Projects/Screeps/app.wasm /home/douwe/Projects/Screeps/dist/app_module.wasm /usr/bin/cmake -E copy /home/douwe/Projects/Screeps/app.js /home/douwe/Projects/Screeps/dist/app_loader.js diff --git a/CMakeFiles/app.dir/cmake_clean.cmake b/CMakeFiles/app.dir/cmake_clean.cmake index 07c0ff4..732c260 100644 --- a/CMakeFiles/app.dir/cmake_clean.cmake +++ b/CMakeFiles/app.dir/cmake_clean.cmake @@ -1,4 +1,6 @@ file(REMOVE_RECURSE + "CMakeFiles/app.dir/src/harvester.cpp.o" + "CMakeFiles/app.dir/src/harvester.cpp.o.d" "CMakeFiles/app.dir/src/loop.cpp.o" "CMakeFiles/app.dir/src/loop.cpp.o.d" "CMakeFiles/app.dir/src/spawn.cpp.o" diff --git a/CMakeFiles/app.dir/compiler_depend.internal b/CMakeFiles/app.dir/compiler_depend.internal index 8e98093..73493b8 100644 --- a/CMakeFiles/app.dir/compiler_depend.internal +++ b/CMakeFiles/app.dir/compiler_depend.internal @@ -1,6 +1,187 @@ # CMAKE generated file: DO NOT EDIT! # Generated by "Unix Makefiles" Generator, CMake Version 3.28 +CMakeFiles/app.dir/src/harvester.cpp.o + /home/douwe/Projects/Screeps/src/harvester.cpp + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/ctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/math.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdarg.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdlib.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/string.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/time.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wchar.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/xlocale.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_asm.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_js.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_macros.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/emscripten.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/val.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/wire.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/alloca.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/assert.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/ctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/errno.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/features.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/limits.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/locale.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/math.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/nl_types.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/pthread.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/sched.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdarg.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stddef.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdint.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdio.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdlib.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/string.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/strings.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/time.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wchar.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bit_reference + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__config + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__debug + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__errc + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__functional_base + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__hash_table + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__locale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__mutex_base + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__node_handle + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__nullptr + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__split_buffer + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__string + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__threading_support + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tree + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tuple + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__undef_macros + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/algorithm + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/array + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/atomic + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bit + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bitset + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cassert + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cctype + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cerrno + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/chrono + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/climits + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/clocale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cmath + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdarg + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstddef + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdint + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdio + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdlib + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstring + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctime + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwchar + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwctype + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/errno.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/exception + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/forward_list + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/functional + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/initializer_list + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ios + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iosfwd + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/istream + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iterator + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/map + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/math.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/memory + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/mutex + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/new + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/numeric + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/optional + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ostream + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ratio + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stddef.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdexcept + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdint.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdio.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdlib.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/streambuf + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string_view + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/system_error + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/tuple + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/type_traits + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/typeinfo + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/unordered_map + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/utility + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/valarray + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/vector + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/version + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wchar.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/wasi/api.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h + /home/douwe/Projects/Screeps/include/creeps/harvester.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Constants.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Creep.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Game.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JS.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JSON.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Object.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/OwnedStructure.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Room.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/RoomObject.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/RoomPosition.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Source.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Store.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Structure.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureController.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureExtension.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureSpawn.hpp + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureTower.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/adl_serializer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/byte_container_with_subtype.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/from_json.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_chars.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_json.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/exceptions.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/hash.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/binary_reader.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/input_adapters.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/json_sax.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/lexer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/parser.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/position_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_pointer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_ref.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_scope.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_unscope.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/cpp_future.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/detected.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/is_sax.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/type_traits.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/void_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/binary_writer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/output_adapters.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/serializer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/value_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json_fwd.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/ordered_map.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp + CMakeFiles/app.dir/src/loop.cpp.o /home/douwe/Projects/Screeps/src/loop.cpp /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/ctype.h @@ -127,6 +308,8 @@ CMakeFiles/app.dir/src/loop.cpp.o /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h + /home/douwe/Projects/Screeps/include/Constants.hpp + /home/douwe/Projects/Screeps/include/creeps/harvester.hpp /home/douwe/Projects/Screeps/include/structures/spawn.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Constants.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Context.hpp @@ -184,10 +367,13 @@ CMakeFiles/app.dir/src/spawn.cpp.o /home/douwe/Projects/Screeps/src/spawn.cpp /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/ctype.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/math.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdarg.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdlib.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/string.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/time.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wchar.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/xlocale.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_asm.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_js.h @@ -196,27 +382,40 @@ CMakeFiles/app.dir/src/spawn.cpp.o /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/val.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/wire.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/alloca.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/assert.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/ctype.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/errno.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/features.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/limits.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/locale.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/math.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/nl_types.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/pthread.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/sched.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdarg.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stddef.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdint.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdio.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdlib.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/string.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/strings.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/time.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wchar.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wctype.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bit_reference + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__config /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__debug + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__errc /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__functional_base + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__hash_table + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__locale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__mutex_base /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__node_handle /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__nullptr /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__split_buffer /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__string + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__threading_support /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tree /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tuple /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__undef_macros @@ -224,48 +423,72 @@ CMakeFiles/app.dir/src/spawn.cpp.o /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/array /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/atomic /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bit + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bitset + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cassert /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cctype + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cerrno + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/chrono /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/climits + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/clocale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cmath + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdarg /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstddef /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdint /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdio /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdlib /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstring + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctime /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctype.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwchar /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwctype + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/errno.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/exception + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/forward_list /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/functional /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/initializer_list + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ios /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iosfwd + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/istream /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iterator /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/map /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/math.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/memory + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/mutex /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/new + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/numeric /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/optional + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ostream + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ratio /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stddef.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdexcept /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdint.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdio.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdlib.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/streambuf /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string_view + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/system_error /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/tuple /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/type_traits /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/typeinfo + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/unordered_map /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/utility + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/valarray /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/vector /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/version /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wchar.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wctype.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/wasi/api.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h + /home/douwe/Projects/Screeps/include/Constants.hpp /home/douwe/Projects/Screeps/include/structures/spawn.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Constants.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Game.hpp @@ -276,5 +499,41 @@ CMakeFiles/app.dir/src/spawn.cpp.o /home/douwe/Projects/Screeps/screepsxx/include/Screeps/RoomObject.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Structure.hpp /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureSpawn.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/adl_serializer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/byte_container_with_subtype.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/from_json.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_chars.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_json.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/exceptions.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/hash.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/binary_reader.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/input_adapters.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/json_sax.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/lexer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/parser.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/position_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_pointer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_ref.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_scope.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_unscope.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/cpp_future.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/detected.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/is_sax.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/type_traits.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/void_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/binary_writer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/output_adapters.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/serializer.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/value_t.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json.hpp /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json_fwd.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/ordered_map.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp diff --git a/CMakeFiles/app.dir/compiler_depend.make b/CMakeFiles/app.dir/compiler_depend.make index 34f55be..b28446a 100644 --- a/CMakeFiles/app.dir/compiler_depend.make +++ b/CMakeFiles/app.dir/compiler_depend.make @@ -1,6 +1,186 @@ # CMAKE generated file: DO NOT EDIT! # Generated by "Unix Makefiles" Generator, CMake Version 3.28 +CMakeFiles/app.dir/src/harvester.cpp.o: src/harvester.cpp \ + emsdk/upstream/emscripten/system/include/compat/ctype.h \ + emsdk/upstream/emscripten/system/include/compat/math.h \ + emsdk/upstream/emscripten/system/include/compat/stdarg.h \ + emsdk/upstream/emscripten/system/include/compat/stdlib.h \ + emsdk/upstream/emscripten/system/include/compat/string.h \ + emsdk/upstream/emscripten/system/include/compat/time.h \ + emsdk/upstream/emscripten/system/include/compat/wchar.h \ + emsdk/upstream/emscripten/system/include/compat/wctype.h \ + emsdk/upstream/emscripten/system/include/compat/xlocale.h \ + emsdk/upstream/emscripten/system/include/emscripten.h \ + emsdk/upstream/emscripten/system/include/emscripten/em_asm.h \ + emsdk/upstream/emscripten/system/include/emscripten/em_js.h \ + emsdk/upstream/emscripten/system/include/emscripten/em_macros.h \ + emsdk/upstream/emscripten/system/include/emscripten/emscripten.h \ + emsdk/upstream/emscripten/system/include/emscripten/val.h \ + emsdk/upstream/emscripten/system/include/emscripten/wire.h \ + emsdk/upstream/emscripten/system/include/libc/alloca.h \ + emsdk/upstream/emscripten/system/include/libc/assert.h \ + emsdk/upstream/emscripten/system/include/libc/ctype.h \ + emsdk/upstream/emscripten/system/include/libc/errno.h \ + emsdk/upstream/emscripten/system/include/libc/features.h \ + emsdk/upstream/emscripten/system/include/libc/limits.h \ + emsdk/upstream/emscripten/system/include/libc/locale.h \ + emsdk/upstream/emscripten/system/include/libc/math.h \ + emsdk/upstream/emscripten/system/include/libc/nl_types.h \ + emsdk/upstream/emscripten/system/include/libc/pthread.h \ + emsdk/upstream/emscripten/system/include/libc/sched.h \ + emsdk/upstream/emscripten/system/include/libc/stdarg.h \ + emsdk/upstream/emscripten/system/include/libc/stddef.h \ + emsdk/upstream/emscripten/system/include/libc/stdint.h \ + emsdk/upstream/emscripten/system/include/libc/stdio.h \ + emsdk/upstream/emscripten/system/include/libc/stdlib.h \ + emsdk/upstream/emscripten/system/include/libc/string.h \ + emsdk/upstream/emscripten/system/include/libc/strings.h \ + emsdk/upstream/emscripten/system/include/libc/time.h \ + emsdk/upstream/emscripten/system/include/libc/wchar.h \ + emsdk/upstream/emscripten/system/include/libc/wctype.h \ + emsdk/upstream/emscripten/system/include/libcxx/__bit_reference \ + emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h \ + emsdk/upstream/emscripten/system/include/libcxx/__config \ + emsdk/upstream/emscripten/system/include/libcxx/__debug \ + emsdk/upstream/emscripten/system/include/libcxx/__errc \ + emsdk/upstream/emscripten/system/include/libcxx/__functional_base \ + emsdk/upstream/emscripten/system/include/libcxx/__hash_table \ + emsdk/upstream/emscripten/system/include/libcxx/__locale \ + emsdk/upstream/emscripten/system/include/libcxx/__mutex_base \ + emsdk/upstream/emscripten/system/include/libcxx/__node_handle \ + emsdk/upstream/emscripten/system/include/libcxx/__nullptr \ + emsdk/upstream/emscripten/system/include/libcxx/__split_buffer \ + emsdk/upstream/emscripten/system/include/libcxx/__string \ + emsdk/upstream/emscripten/system/include/libcxx/__threading_support \ + emsdk/upstream/emscripten/system/include/libcxx/__tree \ + emsdk/upstream/emscripten/system/include/libcxx/__tuple \ + emsdk/upstream/emscripten/system/include/libcxx/__undef_macros \ + emsdk/upstream/emscripten/system/include/libcxx/algorithm \ + emsdk/upstream/emscripten/system/include/libcxx/array \ + emsdk/upstream/emscripten/system/include/libcxx/atomic \ + emsdk/upstream/emscripten/system/include/libcxx/bit \ + emsdk/upstream/emscripten/system/include/libcxx/bitset \ + emsdk/upstream/emscripten/system/include/libcxx/cassert \ + emsdk/upstream/emscripten/system/include/libcxx/cctype \ + emsdk/upstream/emscripten/system/include/libcxx/cerrno \ + emsdk/upstream/emscripten/system/include/libcxx/chrono \ + emsdk/upstream/emscripten/system/include/libcxx/climits \ + emsdk/upstream/emscripten/system/include/libcxx/clocale \ + emsdk/upstream/emscripten/system/include/libcxx/cmath \ + emsdk/upstream/emscripten/system/include/libcxx/cstdarg \ + emsdk/upstream/emscripten/system/include/libcxx/cstddef \ + emsdk/upstream/emscripten/system/include/libcxx/cstdint \ + emsdk/upstream/emscripten/system/include/libcxx/cstdio \ + emsdk/upstream/emscripten/system/include/libcxx/cstdlib \ + emsdk/upstream/emscripten/system/include/libcxx/cstring \ + emsdk/upstream/emscripten/system/include/libcxx/ctime \ + emsdk/upstream/emscripten/system/include/libcxx/ctype.h \ + emsdk/upstream/emscripten/system/include/libcxx/cwchar \ + emsdk/upstream/emscripten/system/include/libcxx/cwctype \ + emsdk/upstream/emscripten/system/include/libcxx/errno.h \ + emsdk/upstream/emscripten/system/include/libcxx/exception \ + emsdk/upstream/emscripten/system/include/libcxx/forward_list \ + emsdk/upstream/emscripten/system/include/libcxx/functional \ + emsdk/upstream/emscripten/system/include/libcxx/initializer_list \ + emsdk/upstream/emscripten/system/include/libcxx/ios \ + emsdk/upstream/emscripten/system/include/libcxx/iosfwd \ + emsdk/upstream/emscripten/system/include/libcxx/istream \ + emsdk/upstream/emscripten/system/include/libcxx/iterator \ + emsdk/upstream/emscripten/system/include/libcxx/limits \ + emsdk/upstream/emscripten/system/include/libcxx/limits.h \ + emsdk/upstream/emscripten/system/include/libcxx/locale \ + emsdk/upstream/emscripten/system/include/libcxx/locale.h \ + emsdk/upstream/emscripten/system/include/libcxx/map \ + emsdk/upstream/emscripten/system/include/libcxx/math.h \ + emsdk/upstream/emscripten/system/include/libcxx/memory \ + emsdk/upstream/emscripten/system/include/libcxx/mutex \ + emsdk/upstream/emscripten/system/include/libcxx/new \ + emsdk/upstream/emscripten/system/include/libcxx/numeric \ + emsdk/upstream/emscripten/system/include/libcxx/optional \ + emsdk/upstream/emscripten/system/include/libcxx/ostream \ + emsdk/upstream/emscripten/system/include/libcxx/ratio \ + emsdk/upstream/emscripten/system/include/libcxx/stddef.h \ + emsdk/upstream/emscripten/system/include/libcxx/stdexcept \ + emsdk/upstream/emscripten/system/include/libcxx/stdint.h \ + emsdk/upstream/emscripten/system/include/libcxx/stdio.h \ + emsdk/upstream/emscripten/system/include/libcxx/stdlib.h \ + emsdk/upstream/emscripten/system/include/libcxx/streambuf \ + emsdk/upstream/emscripten/system/include/libcxx/string \ + emsdk/upstream/emscripten/system/include/libcxx/string.h \ + emsdk/upstream/emscripten/system/include/libcxx/string_view \ + emsdk/upstream/emscripten/system/include/libcxx/system_error \ + emsdk/upstream/emscripten/system/include/libcxx/tuple \ + emsdk/upstream/emscripten/system/include/libcxx/type_traits \ + emsdk/upstream/emscripten/system/include/libcxx/typeinfo \ + emsdk/upstream/emscripten/system/include/libcxx/unordered_map \ + emsdk/upstream/emscripten/system/include/libcxx/utility \ + emsdk/upstream/emscripten/system/include/libcxx/valarray \ + emsdk/upstream/emscripten/system/include/libcxx/vector \ + emsdk/upstream/emscripten/system/include/libcxx/version \ + emsdk/upstream/emscripten/system/include/libcxx/wchar.h \ + emsdk/upstream/emscripten/system/include/libcxx/wctype.h \ + emsdk/upstream/emscripten/system/include/wasi/api.h \ + emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h \ + emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h \ + emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h \ + emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ + include/creeps/harvester.hpp \ + screepsxx/include/Screeps/Constants.hpp \ + screepsxx/include/Screeps/Creep.hpp \ + screepsxx/include/Screeps/Game.hpp \ + screepsxx/include/Screeps/JS.hpp \ + screepsxx/include/Screeps/JSON.hpp \ + screepsxx/include/Screeps/Object.hpp \ + screepsxx/include/Screeps/OwnedStructure.hpp \ + screepsxx/include/Screeps/Room.hpp \ + screepsxx/include/Screeps/RoomObject.hpp \ + screepsxx/include/Screeps/RoomPosition.hpp \ + screepsxx/include/Screeps/Source.hpp \ + screepsxx/include/Screeps/Store.hpp \ + screepsxx/include/Screeps/Structure.hpp \ + screepsxx/include/Screeps/StructureController.hpp \ + screepsxx/include/Screeps/StructureExtension.hpp \ + screepsxx/include/Screeps/StructureSpawn.hpp \ + screepsxx/include/Screeps/StructureTower.hpp \ + screepsxx/include/nlohmann/adl_serializer.hpp \ + screepsxx/include/nlohmann/byte_container_with_subtype.hpp \ + screepsxx/include/nlohmann/detail/conversions/from_json.hpp \ + screepsxx/include/nlohmann/detail/conversions/to_chars.hpp \ + screepsxx/include/nlohmann/detail/conversions/to_json.hpp \ + screepsxx/include/nlohmann/detail/exceptions.hpp \ + screepsxx/include/nlohmann/detail/hash.hpp \ + screepsxx/include/nlohmann/detail/input/binary_reader.hpp \ + screepsxx/include/nlohmann/detail/input/input_adapters.hpp \ + screepsxx/include/nlohmann/detail/input/json_sax.hpp \ + screepsxx/include/nlohmann/detail/input/lexer.hpp \ + screepsxx/include/nlohmann/detail/input/parser.hpp \ + screepsxx/include/nlohmann/detail/input/position_t.hpp \ + screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp \ + screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp \ + screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp \ + screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp \ + screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp \ + screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp \ + screepsxx/include/nlohmann/detail/json_pointer.hpp \ + screepsxx/include/nlohmann/detail/json_ref.hpp \ + screepsxx/include/nlohmann/detail/macro_scope.hpp \ + screepsxx/include/nlohmann/detail/macro_unscope.hpp \ + screepsxx/include/nlohmann/detail/meta/cpp_future.hpp \ + screepsxx/include/nlohmann/detail/meta/detected.hpp \ + screepsxx/include/nlohmann/detail/meta/is_sax.hpp \ + screepsxx/include/nlohmann/detail/meta/type_traits.hpp \ + screepsxx/include/nlohmann/detail/meta/void_t.hpp \ + screepsxx/include/nlohmann/detail/output/binary_writer.hpp \ + screepsxx/include/nlohmann/detail/output/output_adapters.hpp \ + screepsxx/include/nlohmann/detail/output/serializer.hpp \ + screepsxx/include/nlohmann/detail/value_t.hpp \ + screepsxx/include/nlohmann/json.hpp \ + screepsxx/include/nlohmann/json_fwd.hpp \ + screepsxx/include/nlohmann/ordered_map.hpp \ + screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp \ + screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp + CMakeFiles/app.dir/src/loop.cpp.o: src/loop.cpp \ emsdk/upstream/emscripten/system/include/compat/ctype.h \ emsdk/upstream/emscripten/system/include/compat/math.h \ @@ -126,6 +306,8 @@ CMakeFiles/app.dir/src/loop.cpp.o: src/loop.cpp \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ + include/Constants.hpp \ + include/creeps/harvester.hpp \ include/structures/spawn.hpp \ screepsxx/include/Screeps/Constants.hpp \ screepsxx/include/Screeps/Context.hpp \ @@ -182,10 +364,13 @@ CMakeFiles/app.dir/src/loop.cpp.o: src/loop.cpp \ CMakeFiles/app.dir/src/spawn.cpp.o: src/spawn.cpp \ emsdk/upstream/emscripten/system/include/compat/ctype.h \ emsdk/upstream/emscripten/system/include/compat/math.h \ + emsdk/upstream/emscripten/system/include/compat/stdarg.h \ emsdk/upstream/emscripten/system/include/compat/stdlib.h \ emsdk/upstream/emscripten/system/include/compat/string.h \ + emsdk/upstream/emscripten/system/include/compat/time.h \ emsdk/upstream/emscripten/system/include/compat/wchar.h \ emsdk/upstream/emscripten/system/include/compat/wctype.h \ + emsdk/upstream/emscripten/system/include/compat/xlocale.h \ emsdk/upstream/emscripten/system/include/emscripten.h \ emsdk/upstream/emscripten/system/include/emscripten/em_asm.h \ emsdk/upstream/emscripten/system/include/emscripten/em_js.h \ @@ -194,27 +379,40 @@ CMakeFiles/app.dir/src/spawn.cpp.o: src/spawn.cpp \ emsdk/upstream/emscripten/system/include/emscripten/val.h \ emsdk/upstream/emscripten/system/include/emscripten/wire.h \ emsdk/upstream/emscripten/system/include/libc/alloca.h \ + emsdk/upstream/emscripten/system/include/libc/assert.h \ emsdk/upstream/emscripten/system/include/libc/ctype.h \ + emsdk/upstream/emscripten/system/include/libc/errno.h \ emsdk/upstream/emscripten/system/include/libc/features.h \ emsdk/upstream/emscripten/system/include/libc/limits.h \ + emsdk/upstream/emscripten/system/include/libc/locale.h \ emsdk/upstream/emscripten/system/include/libc/math.h \ + emsdk/upstream/emscripten/system/include/libc/nl_types.h \ emsdk/upstream/emscripten/system/include/libc/pthread.h \ + emsdk/upstream/emscripten/system/include/libc/sched.h \ + emsdk/upstream/emscripten/system/include/libc/stdarg.h \ emsdk/upstream/emscripten/system/include/libc/stddef.h \ emsdk/upstream/emscripten/system/include/libc/stdint.h \ emsdk/upstream/emscripten/system/include/libc/stdio.h \ emsdk/upstream/emscripten/system/include/libc/stdlib.h \ emsdk/upstream/emscripten/system/include/libc/string.h \ emsdk/upstream/emscripten/system/include/libc/strings.h \ + emsdk/upstream/emscripten/system/include/libc/time.h \ emsdk/upstream/emscripten/system/include/libc/wchar.h \ emsdk/upstream/emscripten/system/include/libc/wctype.h \ emsdk/upstream/emscripten/system/include/libcxx/__bit_reference \ + emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h \ emsdk/upstream/emscripten/system/include/libcxx/__config \ emsdk/upstream/emscripten/system/include/libcxx/__debug \ + emsdk/upstream/emscripten/system/include/libcxx/__errc \ emsdk/upstream/emscripten/system/include/libcxx/__functional_base \ + emsdk/upstream/emscripten/system/include/libcxx/__hash_table \ + emsdk/upstream/emscripten/system/include/libcxx/__locale \ + emsdk/upstream/emscripten/system/include/libcxx/__mutex_base \ emsdk/upstream/emscripten/system/include/libcxx/__node_handle \ emsdk/upstream/emscripten/system/include/libcxx/__nullptr \ emsdk/upstream/emscripten/system/include/libcxx/__split_buffer \ emsdk/upstream/emscripten/system/include/libcxx/__string \ + emsdk/upstream/emscripten/system/include/libcxx/__threading_support \ emsdk/upstream/emscripten/system/include/libcxx/__tree \ emsdk/upstream/emscripten/system/include/libcxx/__tuple \ emsdk/upstream/emscripten/system/include/libcxx/__undef_macros \ @@ -222,48 +420,72 @@ CMakeFiles/app.dir/src/spawn.cpp.o: src/spawn.cpp \ emsdk/upstream/emscripten/system/include/libcxx/array \ emsdk/upstream/emscripten/system/include/libcxx/atomic \ emsdk/upstream/emscripten/system/include/libcxx/bit \ + emsdk/upstream/emscripten/system/include/libcxx/bitset \ + emsdk/upstream/emscripten/system/include/libcxx/cassert \ emsdk/upstream/emscripten/system/include/libcxx/cctype \ + emsdk/upstream/emscripten/system/include/libcxx/cerrno \ + emsdk/upstream/emscripten/system/include/libcxx/chrono \ emsdk/upstream/emscripten/system/include/libcxx/climits \ + emsdk/upstream/emscripten/system/include/libcxx/clocale \ + emsdk/upstream/emscripten/system/include/libcxx/cmath \ + emsdk/upstream/emscripten/system/include/libcxx/cstdarg \ emsdk/upstream/emscripten/system/include/libcxx/cstddef \ emsdk/upstream/emscripten/system/include/libcxx/cstdint \ emsdk/upstream/emscripten/system/include/libcxx/cstdio \ emsdk/upstream/emscripten/system/include/libcxx/cstdlib \ emsdk/upstream/emscripten/system/include/libcxx/cstring \ + emsdk/upstream/emscripten/system/include/libcxx/ctime \ emsdk/upstream/emscripten/system/include/libcxx/ctype.h \ emsdk/upstream/emscripten/system/include/libcxx/cwchar \ emsdk/upstream/emscripten/system/include/libcxx/cwctype \ + emsdk/upstream/emscripten/system/include/libcxx/errno.h \ emsdk/upstream/emscripten/system/include/libcxx/exception \ + emsdk/upstream/emscripten/system/include/libcxx/forward_list \ emsdk/upstream/emscripten/system/include/libcxx/functional \ emsdk/upstream/emscripten/system/include/libcxx/initializer_list \ + emsdk/upstream/emscripten/system/include/libcxx/ios \ emsdk/upstream/emscripten/system/include/libcxx/iosfwd \ + emsdk/upstream/emscripten/system/include/libcxx/istream \ emsdk/upstream/emscripten/system/include/libcxx/iterator \ emsdk/upstream/emscripten/system/include/libcxx/limits \ emsdk/upstream/emscripten/system/include/libcxx/limits.h \ + emsdk/upstream/emscripten/system/include/libcxx/locale \ + emsdk/upstream/emscripten/system/include/libcxx/locale.h \ emsdk/upstream/emscripten/system/include/libcxx/map \ emsdk/upstream/emscripten/system/include/libcxx/math.h \ emsdk/upstream/emscripten/system/include/libcxx/memory \ + emsdk/upstream/emscripten/system/include/libcxx/mutex \ emsdk/upstream/emscripten/system/include/libcxx/new \ + emsdk/upstream/emscripten/system/include/libcxx/numeric \ emsdk/upstream/emscripten/system/include/libcxx/optional \ + emsdk/upstream/emscripten/system/include/libcxx/ostream \ + emsdk/upstream/emscripten/system/include/libcxx/ratio \ emsdk/upstream/emscripten/system/include/libcxx/stddef.h \ emsdk/upstream/emscripten/system/include/libcxx/stdexcept \ emsdk/upstream/emscripten/system/include/libcxx/stdint.h \ emsdk/upstream/emscripten/system/include/libcxx/stdio.h \ emsdk/upstream/emscripten/system/include/libcxx/stdlib.h \ + emsdk/upstream/emscripten/system/include/libcxx/streambuf \ emsdk/upstream/emscripten/system/include/libcxx/string \ emsdk/upstream/emscripten/system/include/libcxx/string.h \ emsdk/upstream/emscripten/system/include/libcxx/string_view \ + emsdk/upstream/emscripten/system/include/libcxx/system_error \ emsdk/upstream/emscripten/system/include/libcxx/tuple \ emsdk/upstream/emscripten/system/include/libcxx/type_traits \ emsdk/upstream/emscripten/system/include/libcxx/typeinfo \ + emsdk/upstream/emscripten/system/include/libcxx/unordered_map \ emsdk/upstream/emscripten/system/include/libcxx/utility \ + emsdk/upstream/emscripten/system/include/libcxx/valarray \ emsdk/upstream/emscripten/system/include/libcxx/vector \ emsdk/upstream/emscripten/system/include/libcxx/version \ emsdk/upstream/emscripten/system/include/libcxx/wchar.h \ emsdk/upstream/emscripten/system/include/libcxx/wctype.h \ emsdk/upstream/emscripten/system/include/wasi/api.h \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h \ + emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h \ emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ + include/Constants.hpp \ include/structures/spawn.hpp \ screepsxx/include/Screeps/Constants.hpp \ screepsxx/include/Screeps/Game.hpp \ @@ -274,10 +496,54 @@ CMakeFiles/app.dir/src/spawn.cpp.o: src/spawn.cpp \ screepsxx/include/Screeps/RoomObject.hpp \ screepsxx/include/Screeps/Structure.hpp \ screepsxx/include/Screeps/StructureSpawn.hpp \ - screepsxx/include/nlohmann/json_fwd.hpp + screepsxx/include/nlohmann/adl_serializer.hpp \ + screepsxx/include/nlohmann/byte_container_with_subtype.hpp \ + screepsxx/include/nlohmann/detail/conversions/from_json.hpp \ + screepsxx/include/nlohmann/detail/conversions/to_chars.hpp \ + screepsxx/include/nlohmann/detail/conversions/to_json.hpp \ + screepsxx/include/nlohmann/detail/exceptions.hpp \ + screepsxx/include/nlohmann/detail/hash.hpp \ + screepsxx/include/nlohmann/detail/input/binary_reader.hpp \ + screepsxx/include/nlohmann/detail/input/input_adapters.hpp \ + screepsxx/include/nlohmann/detail/input/json_sax.hpp \ + screepsxx/include/nlohmann/detail/input/lexer.hpp \ + screepsxx/include/nlohmann/detail/input/parser.hpp \ + screepsxx/include/nlohmann/detail/input/position_t.hpp \ + screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp \ + screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp \ + screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp \ + screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp \ + screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp \ + screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp \ + screepsxx/include/nlohmann/detail/json_pointer.hpp \ + screepsxx/include/nlohmann/detail/json_ref.hpp \ + screepsxx/include/nlohmann/detail/macro_scope.hpp \ + screepsxx/include/nlohmann/detail/macro_unscope.hpp \ + screepsxx/include/nlohmann/detail/meta/cpp_future.hpp \ + screepsxx/include/nlohmann/detail/meta/detected.hpp \ + screepsxx/include/nlohmann/detail/meta/is_sax.hpp \ + screepsxx/include/nlohmann/detail/meta/type_traits.hpp \ + screepsxx/include/nlohmann/detail/meta/void_t.hpp \ + screepsxx/include/nlohmann/detail/output/binary_writer.hpp \ + screepsxx/include/nlohmann/detail/output/output_adapters.hpp \ + screepsxx/include/nlohmann/detail/output/serializer.hpp \ + screepsxx/include/nlohmann/detail/value_t.hpp \ + screepsxx/include/nlohmann/json.hpp \ + screepsxx/include/nlohmann/json_fwd.hpp \ + screepsxx/include/nlohmann/ordered_map.hpp \ + screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp \ + screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp -screepsxx/include/Screeps/Room.hpp: +screepsxx/include/Screeps/PathFinder.hpp: + +screepsxx/include/Screeps/Context.hpp: + +screepsxx/include/Screeps/RawMemory.hpp: + +emsdk/upstream/emscripten/system/include/emscripten/bind.h: + +src/loop.cpp: screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp: @@ -303,8 +569,6 @@ screepsxx/include/nlohmann/detail/json_pointer.hpp: screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp: -screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp: - screepsxx/include/nlohmann/detail/input/position_t.hpp: screepsxx/include/nlohmann/detail/input/json_sax.hpp: @@ -319,9 +583,17 @@ screepsxx/include/nlohmann/byte_container_with_subtype.hpp: screepsxx/include/nlohmann/adl_serializer.hpp: +screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp: + +screepsxx/include/Screeps/StructureExtension.hpp: + +screepsxx/include/Screeps/StructureController.hpp: + screepsxx/include/Screeps/Structure.hpp: -screepsxx/include/Screeps/PathFinder.hpp: +screepsxx/include/Screeps/RoomPosition.hpp: + +screepsxx/include/Screeps/Room.hpp: screepsxx/include/Screeps/OwnedStructure.hpp: @@ -329,14 +601,12 @@ screepsxx/include/Screeps/JSON.hpp: screepsxx/include/Screeps/Game.hpp: -screepsxx/include/Screeps/Creep.hpp: - -screepsxx/include/Screeps/Context.hpp: - screepsxx/include/nlohmann/detail/exceptions.hpp: emsdk/upstream/emscripten/system/include/libcxx/bitset: +screepsxx/include/Screeps/Creep.hpp: + screepsxx/include/Screeps/RoomObject.hpp: emsdk/upstream/emscripten/system/include/libcxx/algorithm: @@ -371,6 +641,10 @@ emsdk/upstream/emscripten/system/include/libcxx/cstdio: emsdk/upstream/emscripten/system/include/libcxx/__bit_reference: +screepsxx/include/Screeps/StructureTower.hpp: + +include/creeps/harvester.hpp: + emsdk/upstream/emscripten/system/include/libcxx/exception: screepsxx/include/nlohmann/detail/hash.hpp: @@ -379,21 +653,11 @@ emsdk/upstream/emscripten/system/include/libc/stdint.h: emsdk/upstream/emscripten/system/include/libcxx/functional: -emsdk/upstream/emscripten/system/include/libcxx/__node_handle: +include/Constants.hpp: -screepsxx/include/Screeps/StructureSpawn.hpp: +emsdk/upstream/emscripten/system/include/emscripten/em_js.h: -emsdk/upstream/emscripten/system/include/libcxx/climits: - -emsdk/upstream/emscripten/system/include/libcxx/stdint.h: - -emsdk/upstream/emscripten/system/include/libcxx/type_traits: - -emsdk/upstream/emscripten/system/include/libcxx/string.h: - -emsdk/upstream/emscripten/system/include/libcxx/__debug: - -emsdk/upstream/emscripten/system/include/libc/stdarg.h: +emsdk/upstream/emscripten/system/include/libcxx/utility: emsdk/upstream/emscripten/system/include/compat/xlocale.h: @@ -413,6 +677,8 @@ emsdk/upstream/emscripten/system/include/libcxx/wctype.h: screepsxx/include/nlohmann/detail/input/input_adapters.hpp: +screepsxx/include/Screeps/Source.hpp: + emsdk/upstream/emscripten/system/include/emscripten/em_asm.h: screepsxx/include/nlohmann/json.hpp: @@ -441,20 +707,14 @@ emsdk/upstream/emscripten/system/include/libcxx/stdlib.h: emsdk/upstream/emscripten/system/include/libcxx/wchar.h: +src/harvester.cpp: + emsdk/upstream/emscripten/system/include/libcxx/ios: emsdk/upstream/emscripten/system/include/emscripten.h: emsdk/upstream/emscripten/system/include/libcxx/math.h: -src/loop.cpp: - -emsdk/upstream/emscripten/system/include/libcxx/system_error: - -emsdk/upstream/emscripten/system/include/emscripten/em_js.h: - -emsdk/upstream/emscripten/system/include/libcxx/utility: - screepsxx/include/Screeps/Object.hpp: emsdk/upstream/emscripten/system/include/libc/alloca.h: @@ -463,10 +723,6 @@ screepsxx/include/nlohmann/detail/meta/cpp_future.hpp: emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h: -screepsxx/include/Screeps/RawMemory.hpp: - -emsdk/upstream/emscripten/system/include/emscripten/bind.h: - emsdk/upstream/emscripten/system/include/libcxx/__nullptr: emsdk/upstream/emscripten/system/include/libc/assert.h: @@ -521,6 +777,22 @@ emsdk/upstream/emscripten/system/include/libc/locale.h: emsdk/upstream/emscripten/system/include/libcxx/__config: +emsdk/upstream/emscripten/system/include/libcxx/__node_handle: + +screepsxx/include/Screeps/StructureSpawn.hpp: + +emsdk/upstream/emscripten/system/include/libcxx/climits: + +emsdk/upstream/emscripten/system/include/libcxx/stdint.h: + +emsdk/upstream/emscripten/system/include/libcxx/type_traits: + +emsdk/upstream/emscripten/system/include/libcxx/string.h: + +emsdk/upstream/emscripten/system/include/libcxx/__debug: + +emsdk/upstream/emscripten/system/include/libc/stdarg.h: + emsdk/upstream/emscripten/system/include/libc/wchar.h: emsdk/upstream/emscripten/system/include/compat/stdlib.h: @@ -545,10 +817,10 @@ emsdk/upstream/emscripten/system/include/libcxx/locale.h: emsdk/upstream/emscripten/system/include/libcxx/cstring: -screepsxx/include/Screeps/Constants.hpp: - emsdk/upstream/emscripten/system/include/libcxx/cwchar: +screepsxx/include/Screeps/Constants.hpp: + emsdk/upstream/emscripten/system/include/libcxx/ctime: emsdk/upstream/emscripten/system/include/libc/strings.h: @@ -599,16 +871,18 @@ screepsxx/include/nlohmann/detail/conversions/from_json.hpp: emsdk/upstream/emscripten/system/include/libcxx/mutex: +screepsxx/include/Screeps/Store.hpp: + emsdk/upstream/emscripten/system/include/libcxx/new: emsdk/upstream/emscripten/system/include/libcxx/numeric: emsdk/upstream/emscripten/system/include/libcxx/optional: -screepsxx/include/Screeps/JS.hpp: - include/structures/spawn.hpp: +screepsxx/include/Screeps/JS.hpp: + emsdk/upstream/emscripten/system/include/libcxx/ostream: emsdk/upstream/emscripten/system/include/libcxx/ratio: @@ -627,6 +901,8 @@ emsdk/upstream/emscripten/system/include/libcxx/limits: emsdk/upstream/emscripten/system/include/wasi/api.h: +emsdk/upstream/emscripten/system/include/libcxx/system_error: + emsdk/upstream/emscripten/system/include/libcxx/tuple: emsdk/upstream/emscripten/system/include/libcxx/vector: diff --git a/CMakeFiles/app.dir/objects1.rsp b/CMakeFiles/app.dir/objects1.rsp index 5c3200d..0f60cc5 100644 --- a/CMakeFiles/app.dir/objects1.rsp +++ b/CMakeFiles/app.dir/objects1.rsp @@ -1 +1 @@ -CMakeFiles/app.dir/src/loop.cpp.o CMakeFiles/app.dir/src/spawn.cpp.o +CMakeFiles/app.dir/src/harvester.cpp.o CMakeFiles/app.dir/src/loop.cpp.o CMakeFiles/app.dir/src/spawn.cpp.o diff --git a/CMakeFiles/app.dir/progress.make b/CMakeFiles/app.dir/progress.make index 6a9dc74..a69a57e 100644 --- a/CMakeFiles/app.dir/progress.make +++ b/CMakeFiles/app.dir/progress.make @@ -1,4 +1,5 @@ CMAKE_PROGRESS_1 = 1 CMAKE_PROGRESS_2 = 2 CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 diff --git a/CMakeFiles/app.dir/src/harvester.cpp.o b/CMakeFiles/app.dir/src/harvester.cpp.o new file mode 100644 index 0000000..4251f03 Binary files /dev/null and b/CMakeFiles/app.dir/src/harvester.cpp.o differ diff --git a/CMakeFiles/app.dir/src/harvester.cpp.o.d b/CMakeFiles/app.dir/src/harvester.cpp.o.d new file mode 100644 index 0000000..6788d9c --- /dev/null +++ b/CMakeFiles/app.dir/src/harvester.cpp.o.d @@ -0,0 +1,180 @@ +CMakeFiles/app.dir/src/harvester.cpp.o: \ + /home/douwe/Projects/Screeps/src/harvester.cpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/vector \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__config \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/pthread.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iosfwd \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/features.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bit_reference \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bit \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/type_traits \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstddef \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/version \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stddef.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__nullptr \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__undef_macros \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__debug \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/algorithm \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/initializer_list \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstring \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/string.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/string.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/strings.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/utility \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tuple \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdint \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/memory \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/typeinfo \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/exception \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdlib \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdlib.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdlib.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdlib.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/alloca.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/math.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/math.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/math.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/new \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iterator \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__functional_base \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/tuple \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdexcept \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/atomic \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/functional \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/climits \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/limits.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__split_buffer \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/optional \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/emscripten.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_asm.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_macros.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_js.h \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Game.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Object.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JS.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/val.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/wire.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdio.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdio.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/wasi/api.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stddef.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string_view \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__string \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdio \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwchar \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwctype \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cctype \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/ctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/ctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wctype.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/array \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json_fwd.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/map \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tree \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__node_handle \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Creep.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JSON.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/numeric \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cmath \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/adl_serializer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/from_json.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/forward_list \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/unordered_map \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__hash_table \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/valarray \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/exceptions.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/position_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_scope.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cassert \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/assert.h \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/cpp_future.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/type_traits.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/void_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/detected.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/value_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_json.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/byte_container_with_subtype.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/hash.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/binary_reader.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/input_adapters.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/istream \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ostream \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ios \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__locale \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/mutex \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__mutex_base \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/chrono \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctime \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/time.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/time.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ratio \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/system_error \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__errc \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cerrno \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__threading_support \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/sched.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/locale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/xlocale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/streambuf \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdarg \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdarg.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdarg.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/nl_types.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bitset \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/json_sax.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/lexer.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/clocale \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/is_sax.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/parser.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_pointer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_ref.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/binary_writer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/output_adapters.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/serializer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_chars.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/ordered_map.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_unscope.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/RoomObject.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Source.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Constants.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Room.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/RoomPosition.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Structure.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureController.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/OwnedStructure.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureSpawn.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureExtension.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureTower.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Store.hpp \ + /home/douwe/Projects/Screeps/include/creeps/harvester.hpp diff --git a/CMakeFiles/app.dir/src/loop.cpp.o b/CMakeFiles/app.dir/src/loop.cpp.o index df4ff1f..d7d8da4 100644 Binary files a/CMakeFiles/app.dir/src/loop.cpp.o and b/CMakeFiles/app.dir/src/loop.cpp.o differ diff --git a/CMakeFiles/app.dir/src/loop.cpp.o.d b/CMakeFiles/app.dir/src/loop.cpp.o.d index f175724..6b5beca 100644 --- a/CMakeFiles/app.dir/src/loop.cpp.o.d +++ b/CMakeFiles/app.dir/src/loop.cpp.o.d @@ -175,4 +175,6 @@ CMakeFiles/app.dir/src/loop.cpp.o: \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_macros.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_js.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/bind.h \ + /home/douwe/Projects/Screeps/include/Constants.hpp \ + /home/douwe/Projects/Screeps/include/creeps/harvester.hpp \ /home/douwe/Projects/Screeps/include/structures/spawn.hpp diff --git a/CMakeFiles/app.dir/src/spawn.cpp.o b/CMakeFiles/app.dir/src/spawn.cpp.o index a72be81..7027fcb 100644 Binary files a/CMakeFiles/app.dir/src/spawn.cpp.o and b/CMakeFiles/app.dir/src/spawn.cpp.o differ diff --git a/CMakeFiles/app.dir/src/spawn.cpp.o.d b/CMakeFiles/app.dir/src/spawn.cpp.o.d index 26db8b7..bd96545 100644 --- a/CMakeFiles/app.dir/src/spawn.cpp.o.d +++ b/CMakeFiles/app.dir/src/spawn.cpp.o.d @@ -1,23 +1,36 @@ CMakeFiles/app.dir/src/spawn.cpp.o: \ /home/douwe/Projects/Screeps/src/spawn.cpp \ - /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Game.hpp \ - /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Object.hpp \ - /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JS.hpp \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/val.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdint.h \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/algorithm \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__config \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/pthread.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdint.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/wire.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdio.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdio.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/wasi/api.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stddef.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/initializer_list \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstddef \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/version \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stddef.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/alltypes.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__nullptr \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/type_traits \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstring \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/string.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/string.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/features.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/strings.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/utility \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tuple \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdint \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/stdint.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__debug \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iosfwd \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wchar.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/memory \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/typeinfo \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/exception \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdlib \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdlib.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdlib.h \ @@ -26,41 +39,26 @@ CMakeFiles/app.dir/src/spawn.cpp.o: \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/math.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/math.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/math.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/type_traits \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstddef \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/version \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/limits \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__undef_macros \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/memory \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/typeinfo \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/exception \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdint \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/new \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/utility \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tuple \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/initializer_list \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstring \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/string.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/string.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/strings.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__debug \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iosfwd \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wchar.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wchar.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wchar.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/iterator \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__functional_base \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/tuple \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdexcept \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/atomic \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/functional \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bit \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/numeric \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cmath \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/string_view \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__string \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/algorithm \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/functional \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bit \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdio \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stdio.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdio.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/wasi/api.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/stddef.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwchar \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cwctype \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cctype \ @@ -70,7 +68,6 @@ CMakeFiles/app.dir/src/spawn.cpp.o: \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/wctype.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/wctype.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/wctype.h \ - /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/array \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/vector \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bit_reference \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/climits \ @@ -78,11 +75,89 @@ CMakeFiles/app.dir/src/spawn.cpp.o: \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/limits.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/limits.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__split_buffer \ - /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json_fwd.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/adl_serializer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/from_json.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/array \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/forward_list \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/map \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__tree \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__node_handle \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/optional \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/unordered_map \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__hash_table \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/valarray \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/exceptions.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/position_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_scope.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cassert \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/assert.h \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/cpp_future.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/type_traits.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iterator_traits.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/void_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/detected.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/json_fwd.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/value_t.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_json.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iteration_proxy.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/byte_container_with_subtype.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/hash.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/binary_reader.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/input_adapters.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/istream \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ostream \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ios \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__locale \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/mutex \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__mutex_base \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/chrono \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ctime \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/time.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/time.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/ratio \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/system_error \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__errc \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cerrno \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/lib/libc/musl/arch/emscripten/bits/errno.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__threading_support \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/sched.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/locale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/xlocale.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/streambuf \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/locale \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/cstdarg \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/compat/stdarg.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/stdarg.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libc/nl_types.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/__bsd_locale_fallbacks.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/bitset \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/json_sax.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/lexer.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/libcxx/clocale \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/meta/is_sax.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/input/parser.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/internal_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/primitive_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/iter_impl.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/iterators/json_reverse_iterator.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_pointer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/json_ref.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/binary_writer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/output_adapters.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/output/serializer.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/conversions/to_chars.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/ordered_map.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/detail/macro_unscope.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/nlohmann/thirdparty/hedley/hedley_undef.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/JS.hpp \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/val.h \ + /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/wire.h \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Game.hpp \ + /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Object.hpp \ /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Room.hpp \ /home/douwe/Projects/Screeps/screepsxx/include/Screeps/Constants.hpp \ /home/douwe/Projects/Screeps/screepsxx/include/Screeps/StructureSpawn.hpp \ @@ -94,4 +169,5 @@ CMakeFiles/app.dir/src/spawn.cpp.o: \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_asm.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_macros.h \ /home/douwe/Projects/Screeps/emsdk/upstream/emscripten/system/include/emscripten/em_js.h \ + /home/douwe/Projects/Screeps/include/Constants.hpp \ /home/douwe/Projects/Screeps/include/structures/spawn.hpp diff --git a/CMakeFiles/progress.marks b/CMakeFiles/progress.marks index 7facc89..81b5c5d 100644 --- a/CMakeFiles/progress.marks +++ b/CMakeFiles/progress.marks @@ -1 +1 @@ -36 +37 diff --git a/Makefile b/Makefile index af39ea9..ad1edef 100644 --- a/Makefile +++ b/Makefile @@ -142,6 +142,30 @@ screepsxx/fast: $(MAKE) $(MAKESILENT) -f screepsxx/CMakeFiles/screepsxx.dir/build.make screepsxx/CMakeFiles/screepsxx.dir/build .PHONY : screepsxx/fast +src/harvester.o: src/harvester.cpp.o +.PHONY : src/harvester.o + +# target to build an object file +src/harvester.cpp.o: + $(MAKE) $(MAKESILENT) -f CMakeFiles/app.dir/build.make CMakeFiles/app.dir/src/harvester.cpp.o +.PHONY : src/harvester.cpp.o + +src/harvester.i: src/harvester.cpp.i +.PHONY : src/harvester.i + +# target to preprocess a source file +src/harvester.cpp.i: + $(MAKE) $(MAKESILENT) -f CMakeFiles/app.dir/build.make CMakeFiles/app.dir/src/harvester.cpp.i +.PHONY : src/harvester.cpp.i + +src/harvester.s: src/harvester.cpp.s +.PHONY : src/harvester.s + +# target to generate assembly for a file +src/harvester.cpp.s: + $(MAKE) $(MAKESILENT) -f CMakeFiles/app.dir/build.make CMakeFiles/app.dir/src/harvester.cpp.s +.PHONY : src/harvester.cpp.s + src/loop.o: src/loop.cpp.o .PHONY : src/loop.o @@ -200,6 +224,9 @@ help: @echo "... rebuild_cache" @echo "... app" @echo "... screepsxx" + @echo "... src/harvester.o" + @echo "... src/harvester.i" + @echo "... src/harvester.s" @echo "... src/loop.o" @echo "... src/loop.i" @echo "... src/loop.s" diff --git a/README.md b/README.md index 9c0667a..8c8283b 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,4 @@ My source code for the MMO-programming game: Screeps. # Status -To those interested in this code. I wrote the main body of the source code when just learning programming so its kind of a mess. I'm now slowly rewriting the code base to a more SOLID version. :) +As a way to learn c++ programming I used the screepsxx repo for controlling the screeps with c++. diff --git a/app.js b/app.js index d782b10..af07b59 100644 --- a/app.js +++ b/app.js @@ -6,7 +6,7 @@ var Module = (function() { function(Module) { Module = Module || {}; -var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":485,"maximum":485+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5287392,DYNAMIC_BASE=5287392,DYNAMICTOP_PTR=44352;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="app.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={2496:function(){console.log("Starting loop...")},4064:function(){console.log("Processing Spawns..")},4104:function($0){console.log("creepcount: "+$0)}};function _emscripten_asm_const_iii(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 44352}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_asm_const_iii":_emscripten_asm_const_iii,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); +var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":509,"maximum":509+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5295216,DYNAMIC_BASE=5295216,DYNAMICTOP_PTR=52176;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="app.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={2507:function(){console.log("Setup harvesting")},2552:function(){console.log("Setup target")},2585:function(){console.log("Searching energy deposit")},2630:function(){console.log("Searching source")}};function _emscripten_asm_const_iii(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 52176}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_new_object":__emval_new_object,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_asm_const_iii":_emscripten_asm_const_iii,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["dynCall_iidiiii"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["dynCall_vii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); return Module.ready diff --git a/app.wasm b/app.wasm index e05679b..97e08fa 100644 Binary files a/app.wasm and b/app.wasm differ diff --git a/dist/app_loader.js b/dist/app_loader.js index d782b10..af07b59 100644 --- a/dist/app_loader.js +++ b/dist/app_loader.js @@ -6,7 +6,7 @@ var Module = (function() { function(Module) { Module = Module || {}; -var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":485,"maximum":485+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5287392,DYNAMIC_BASE=5287392,DYNAMICTOP_PTR=44352;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="app.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={2496:function(){console.log("Starting loop...")},4064:function(){console.log("Processing Spawns..")},4104:function($0){console.log("creepcount: "+$0)}};function _emscripten_asm_const_iii(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 44352}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_asm_const_iii":_emscripten_asm_const_iii,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); +var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":509,"maximum":509+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5295216,DYNAMIC_BASE=5295216,DYNAMICTOP_PTR=52176;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="app.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={2507:function(){console.log("Setup harvesting")},2552:function(){console.log("Setup target")},2585:function(){console.log("Searching energy deposit")},2630:function(){console.log("Searching source")}};function _emscripten_asm_const_iii(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 52176}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_new_object":__emval_new_object,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_asm_const_iii":_emscripten_asm_const_iii,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["dynCall_iidiiii"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["dynCall_vii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); return Module.ready diff --git a/dist/app_module.wasm b/dist/app_module.wasm index e05679b..97e08fa 100644 Binary files a/dist/app_module.wasm and b/dist/app_module.wasm differ diff --git a/include/Constants.hpp b/include/Constants.hpp new file mode 100644 index 0000000..5bd851a --- /dev/null +++ b/include/Constants.hpp @@ -0,0 +1,11 @@ +#ifndef DOUWCO_HIVEMIND_CONSTANTS_HPP +#define DOUWCO_HIVEMIND_CONSTANTS_HPP + +namespace DouwcoHivemind{ + +// Roles +const int ROLE_HARVESTER = 0; + +} + +#endif // DOUWCO_HIVEMIND_CONSTANTS_HPP \ No newline at end of file diff --git a/include/creeps/harvester.hpp b/include/creeps/harvester.hpp new file mode 100644 index 0000000..7e8909a --- /dev/null +++ b/include/creeps/harvester.hpp @@ -0,0 +1,29 @@ +#ifndef DOUWCO_HIVEMIND_HARVESTER_HPP +#define DOUWCO_HIVEMIND_HARVESTER_HPP + +#include + +namespace DouwcoHivemind +{ + class HarvesterRole + { + private: + Screeps::Creep *creep; + JSON memory; + public: + HarvesterRole(Screeps::Creep* creep_pntr); + ~HarvesterRole(); + + void process(); + + private: + void setupMemory(); + void searchTarget(); + void searchEnergyDeposit(); + void searchSource(); + void harvestSource(); + void depositEnergy(); + }; +} + +#endif // DOUWCO_HIVEMIND_HARVESTER_HPP \ No newline at end of file diff --git a/include/structures/spawn.hpp b/include/structures/spawn.hpp index 249ae13..1a9897d 100644 --- a/include/structures/spawn.hpp +++ b/include/structures/spawn.hpp @@ -1,10 +1,20 @@ -class SpawnManager -{ -private: - /* data */ -public: - SpawnManager(){} - ~SpawnManager(){} +#ifndef DOUWCO_HIVEMIND_SPAWN_HPP +#define DOUWCO_HIVEMIND_SPAWN_HPP - void process(); -}; +#include + +namespace DouwcoHivemind +{ + class Spawn + { + private: + Screeps::StructureSpawn *structure; + + public: + Spawn(Screeps::StructureSpawn *structure_pntr) { structure = structure_pntr; } + ~Spawn() {} + void process(); + }; +} + +#endif // DOUWCO_HIVEMIND_SPAWN_HPP \ No newline at end of file diff --git a/src/harvester.cpp b/src/harvester.cpp new file mode 100644 index 0000000..8655ea9 --- /dev/null +++ b/src/harvester.cpp @@ -0,0 +1,209 @@ +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "creeps/harvester.hpp" + +bool isNearTo(const Screeps::RoomPosition &pos1, const Screeps::RoomPosition &pos2); + +DouwcoHivemind::HarvesterRole::HarvesterRole(Screeps::Creep *creep_pntr) +{ + creep = creep_pntr; + memory = creep->memory(); +} + +DouwcoHivemind::HarvesterRole::~HarvesterRole() +{ + creep->setMemory(memory); +} + +void DouwcoHivemind::HarvesterRole::process() +{ + setupMemory(); + searchTarget(); + if (memory["harvesting"]) + harvestSource(); + else + depositEnergy(); +} + +void DouwcoHivemind::HarvesterRole::setupMemory() +{ + if (!memory.contains("harvesting")) + { + EM_ASM({ console.log('Setup harvesting'); }); + memory["harvesting"] = false; + } + if (!memory.contains("target") || memory["target"].empty()) + { + EM_ASM({ console.log('Setup target'); }); + if (memory["harvesting"]) + searchSource(); + else + searchEnergyDeposit(); + } +} + +void DouwcoHivemind::HarvesterRole::searchTarget() +{ + if (memory["harvesting"] && creep->store().getFreeCapacity(Screeps::RESOURCE_ENERGY) == 0) + { + EM_ASM({ console.log('Searching energy deposit'); }); + memory["harvesting"] = false; + searchEnergyDeposit(); + } + else if (!memory["harvesting"] && creep->store().getUsedCapacity(Screeps::RESOURCE_ENERGY) == 0) + { + EM_ASM({ console.log('Searching source'); }); + memory["harvesting"] = true; + searchSource(); + } +} + +void DouwcoHivemind::HarvesterRole::searchEnergyDeposit() +{ + auto structures = creep->room().find(Screeps::FIND_MY_STRUCTURES); + std::vector> filtered; + for (auto &structureObject : structures) + { + auto structure = dynamic_cast(structureObject.get()); + if (!structure) + continue; + + if (structure->structureType() == Screeps::STRUCTURE_SPAWN && + dynamic_cast(structure)->store().getFreeCapacity(Screeps::RESOURCE_ENERGY) > 0) + filtered.emplace_back(std::move(structureObject)); + else if (structure->structureType() == Screeps::STRUCTURE_EXTENSION && + dynamic_cast(structure)->store().getFreeCapacity(Screeps::RESOURCE_ENERGY) > 0) + filtered.emplace_back(std::move(structureObject)); + else if (structure->structureType() == Screeps::STRUCTURE_TOWER && + dynamic_cast(structure)->store().getFreeCapacity(Screeps::RESOURCE_ENERGY) > 0) + filtered.emplace_back(std::move(structureObject)); + else if (structure->structureType() == Screeps::STRUCTURE_CONTROLLER) + filtered.emplace_back(std::move(structureObject)); + } + + auto closestObj = creep->pos().findClosestByPath(filtered); + if (closestObj) + { + auto closest = dynamic_cast(closestObj.get()); + memory["target"] = closest ? closest->id() : ""; + } + else + memory["target"].clear(); +} + +void DouwcoHivemind::HarvesterRole::searchSource() +{ + auto sources = creep->room().find(Screeps::FIND_SOURCES_ACTIVE); + std::vector> sourceObjects; + for (auto &source : sources) + sourceObjects.emplace_back(std::move(source)); + + auto closestObj = creep->pos().findClosestByPath(sourceObjects); + if (closestObj) + { + auto closest = dynamic_cast(closestObj.get()); + memory["target"] = closest ? closest->id() : ""; + } + else + { + memory["target"].clear(); + } +} + +void DouwcoHivemind::HarvesterRole::harvestSource() +{ + if (!memory.contains("target") || memory["target"].empty()) + { + searchSource(); + if (!memory.contains("target") || memory["target"].empty()) + return; + } + + auto sourceObj = Screeps::Game.getObjectById(memory["target"]); + if (sourceObj) + { + auto source = dynamic_cast(sourceObj.get()); + if (!source || source->energy() == 0) + { + searchSource(); + sourceObj = Screeps::Game.getObjectById(memory["target"]); + source = dynamic_cast(sourceObj.get()); + if (!source) + return; + } + + if (isNearTo(creep->pos(), source->pos())) + creep->harvest(*source); + else + creep->moveTo(*source); + } +} + +void DouwcoHivemind::HarvesterRole::depositEnergy() +{ + if (!memory.contains("target") || memory["target"].empty()) + { + searchEnergyDeposit(); + if (!memory.contains("target") || memory["target"].empty()) + return; + } + + auto structureObj = Screeps::Game.getObjectById(memory["target"]); + if (structureObj) + { + auto structure = dynamic_cast(structureObj.get()); + bool searchAgain = !structure; + if (!searchAgain) + { + if (isNearTo(creep->pos(), structure->pos())) + { + if (structure->structureType() == Screeps::STRUCTURE_CONTROLLER) + { + Screeps::StructureController *controller = dynamic_cast(structure); + if (!controller) + return; + int resp = creep->upgradeController(*controller); + if (resp != Screeps::OK) + searchAgain = true; + } + else if (structure->structureType() == Screeps::STRUCTURE_SPAWN || + structure->structureType() == Screeps::STRUCTURE_EXTENSION || + structure->structureType() == Screeps::STRUCTURE_TOWER) + { + int resp = creep->transfer(*structure, Screeps::RESOURCE_ENERGY); + if (resp != Screeps::OK) + searchAgain = true; + } + } + else + creep->moveTo(*structure); + } + if (searchAgain) + { + searchEnergyDeposit(); + } + } +} + +bool isNearTo(const Screeps::RoomPosition &pos1, const Screeps::RoomPosition &pos2) +{ + int dx = pos1.x() - pos2.x(); + int dy = pos1.y() - pos2.y(); + return dx * dx < 2 && dy * dy < 2 && pos1.roomName() == pos2.roomName(); +} diff --git a/src/loop.cpp b/src/loop.cpp index c637b6f..8ef2d82 100644 --- a/src/loop.cpp +++ b/src/loop.cpp @@ -6,6 +6,8 @@ #include #include +#include "Constants.hpp" +#include "creeps/harvester.hpp" #include "structures/spawn.hpp" EMSCRIPTEN_KEEPALIVE @@ -13,14 +15,22 @@ extern "C" void loop() { Screeps::Context::update(); - EM_ASM({ console.log('Starting loop...'); }); - - auto spawnManager = SpawnManager(); - spawnManager.process(); + // Structures + for (auto& spawn_entry : Screeps::Game.spawns()) + { + auto spawn = DouwcoHivemind::Spawn(&spawn_entry.second); + spawn.process(); + } + // Creeps auto creeps = Screeps::Game.creeps(); - for (auto& creep : creeps) - creep.second.say("screepsxx"); + for (auto& creep : creeps){ + if (creep.second.memory()["role"] == DouwcoHivemind::ROLE_HARVESTER) + { + auto harvester = DouwcoHivemind::HarvesterRole(&creep.second); + harvester.process(); + } + } } EMSCRIPTEN_BINDINGS(loop) diff --git a/src/spawn.cpp b/src/spawn.cpp index 5c1bf51..59985c9 100644 --- a/src/spawn.cpp +++ b/src/spawn.cpp @@ -1,18 +1,24 @@ +#include +#include #include #include #include - #include +#include "Constants.hpp" #include "structures/spawn.hpp" -void SpawnManager::process() +void DouwcoHivemind::Spawn::process() { - for (auto& spawn : Screeps::Game.spawns()) - { - int creepcount = spawn.second.room().find(Screeps::FIND_MY_CREEPS, nullptr).size(); - // EM_ASM({ console.log('creepcount: ' + $0); }, creepcount); - if (creepcount >= 3) continue; - int resp = spawn.second.spawnCreep({"work", "carry", "move"}, "harvester" + std::to_string(creepcount + 1)); - } + int creepcount = structure->room().find(Screeps::FIND_MY_CREEPS).size(); + if (creepcount > 10) return; + + JSON opts; + opts["memory"]["role"] = DouwcoHivemind::ROLE_HARVESTER; + + int resp = structure->spawnCreep( + {"work", "carry", "move"}, + "harvester" + std::to_string(Screeps::Game.time()), + opts + ); } \ No newline at end of file