gitextract_79l93ovf/ ├── .bzrignore ├── .github/ │ ├── dependabot.yml │ └── workflows/ │ ├── cmake.yml │ └── macos.yml ├── .gitignore ├── .travis.yml ├── CMakeLists.txt ├── COPYING ├── Doxyfile ├── README.md ├── cmake/ │ └── modules/ │ ├── FindCascLib.cmake │ ├── FindGTK2.cmake │ ├── FindMakeNSIS.cmake │ ├── FindStormLib.cmake │ └── FindStratagus.cmake ├── cmake_uninstall.cmake.in ├── dataset/ │ ├── dlgs_race.json │ ├── palettes.json │ └── units.json ├── debian/ │ ├── changelog │ ├── compat │ ├── control │ ├── copyright │ ├── docs │ ├── manpages │ ├── menu │ ├── po/ │ │ ├── POTFILES.in │ │ └── templates.pot │ ├── postrm │ ├── rules │ └── source/ │ └── format ├── doc/ │ ├── changelog │ ├── iscript.txt │ ├── sc_dat_architecture │ ├── scmconvert.6 │ ├── stargus.6 │ ├── startool.6 │ └── todo ├── logging.prop ├── mac/ │ ├── Info.plist │ └── bundle.sh ├── meson.build ├── meson_options.txt ├── mpqlist.txt ├── release.py ├── scripts/ │ ├── RapidStratagusIDE/ │ │ └── RSI_Functions.lua │ ├── ai/ │ │ ├── terran.lua │ │ └── zerg.lua │ ├── ai.lua │ ├── anim.lua │ ├── buttons.lua │ ├── campaigns.lua │ ├── cheats.lua │ ├── commands.lua │ ├── editor.lua │ ├── fonts.lua │ ├── gameui.lua │ ├── guichan.lua │ ├── icons.lua │ ├── maps.lua │ ├── menus/ │ │ ├── campaign.lua │ │ ├── credits.lua │ │ ├── diplomacy.lua │ │ ├── endscenario.lua │ │ ├── game.lua │ │ ├── help.lua │ │ ├── load.lua │ │ ├── network.lua │ │ ├── objectives.lua │ │ ├── options.lua │ │ ├── replay.lua │ │ ├── results.lua │ │ └── save.lua │ ├── missiles.lua │ ├── mobdebug.lua │ ├── neutral/ │ │ ├── unit-bengalaas-jungle-critter.lua │ │ ├── unit-minerals.lua │ │ ├── unit-ragnasaur-ashworld-critter.lua │ │ ├── unit-rhynadon-badlands-critter.lua │ │ ├── unit-vespene-geyser.lua │ │ └── units.lua │ ├── protoss/ │ │ ├── campaign1.lua │ │ ├── icons.lua │ │ ├── missiles.lua │ │ ├── nuetral.lua │ │ ├── sound.lua │ │ ├── unit-protoss-arbiter-tribunal.lua │ │ ├── unit-protoss-assimulator.lua │ │ ├── unit-protoss-citadel-of-adun.lua │ │ ├── unit-protoss-cybernetics-core.lua │ │ ├── unit-protoss-dark-templar.lua │ │ ├── unit-protoss-dragoon.lua │ │ ├── unit-protoss-fleet-beacon.lua │ │ ├── unit-protoss-forge.lua │ │ ├── unit-protoss-gateway.lua │ │ ├── unit-protoss-high-templar.lua │ │ ├── unit-protoss-nexus.lua │ │ ├── unit-protoss-observatory.lua │ │ ├── unit-protoss-observer.lua │ │ ├── unit-protoss-photon-cannon.lua │ │ ├── unit-protoss-probe.lua │ │ ├── unit-protoss-pylon.lua │ │ ├── unit-protoss-reaver.lua │ │ ├── unit-protoss-robotics-facility.lua │ │ ├── unit-protoss-robotics-support-bay.lua │ │ ├── unit-protoss-scout.lua │ │ ├── unit-protoss-shield-battery.lua │ │ ├── unit-protoss-shuttle.lua │ │ ├── unit-protoss-stargate.lua │ │ ├── unit-protoss-templar-archives.lua │ │ ├── unit-protoss-zealot.lua │ │ ├── units.lua │ │ └── upgrade.lua │ ├── sc.lua │ ├── sound.lua │ ├── spells.lua │ ├── stratagus.lua │ ├── terran/ │ │ ├── campaign1.lua │ │ ├── icons.lua │ │ ├── missiles.lua │ │ ├── sound.lua │ │ ├── unit-terran-academy.lua │ │ ├── unit-terran-armory.lua │ │ ├── unit-terran-barracks.lua │ │ ├── unit-terran-battlecruiser.lua │ │ ├── unit-terran-bunker.lua │ │ ├── unit-terran-command-center.lua │ │ ├── unit-terran-comsat-station.lua │ │ ├── unit-terran-dropship.lua │ │ ├── unit-terran-engineering-bay.lua │ │ ├── unit-terran-factory.lua │ │ ├── unit-terran-firebat.lua │ │ ├── unit-terran-ghost.lua │ │ ├── unit-terran-goliath.lua │ │ ├── unit-terran-marine.lua │ │ ├── unit-terran-missile-turret.lua │ │ ├── unit-terran-refinery.lua │ │ ├── unit-terran-science-facility.lua │ │ ├── unit-terran-science-vessel.lua │ │ ├── unit-terran-scv.lua │ │ ├── unit-terran-siege-tank.lua │ │ ├── unit-terran-starport.lua │ │ ├── unit-terran-supply-depot.lua │ │ ├── unit-terran-vulture.lua │ │ ├── unit-terran-wraith.lua │ │ ├── units.lua │ │ └── upgrade.lua │ ├── tilesets.lua │ ├── ui.lua │ ├── units.lua │ ├── upgrade.lua │ ├── widgets.lua │ └── zerg/ │ ├── campaign1.lua │ ├── construction.lua │ ├── icons.lua │ ├── missiles.lua │ ├── sound.lua │ ├── unit-zerg-creep-colony.lua │ ├── unit-zerg-defiler-mound.lua │ ├── unit-zerg-defiler.lua │ ├── unit-zerg-drone.lua │ ├── unit-zerg-egg.lua │ ├── unit-zerg-evolution-chamber.lua │ ├── unit-zerg-extractor.lua │ ├── unit-zerg-greater-spire.lua │ ├── unit-zerg-guardian.lua │ ├── unit-zerg-hatchery.lua │ ├── unit-zerg-hive.lua │ ├── unit-zerg-hydralisk-den.lua │ ├── unit-zerg-hydralisk.lua │ ├── unit-zerg-lair.lua │ ├── unit-zerg-larva.lua │ ├── unit-zerg-mutalisk.lua │ ├── unit-zerg-nydus-canal.lua │ ├── unit-zerg-overlord.lua │ ├── unit-zerg-queen.lua │ ├── unit-zerg-queens-nest.lua │ ├── unit-zerg-scourge.lua │ ├── unit-zerg-spawning-pool.lua │ ├── unit-zerg-spire.lua │ ├── unit-zerg-spore-colony.lua │ ├── unit-zerg-sunken-colony.lua │ ├── unit-zerg-ultralisk-cavern.lua │ ├── unit-zerg-ultralisk.lua │ ├── unit-zerg-zergling.lua │ ├── units.lua │ └── upgrade.lua ├── src/ │ ├── AbstractPalette.cpp │ ├── AbstractPalette.h │ ├── Breeze.cpp │ ├── Breeze.h │ ├── Casc.cpp │ ├── Casc.h │ ├── Chk.cpp │ ├── Chk.h │ ├── Color.cpp │ ├── Color.h │ ├── Converter.cpp │ ├── Converter.h │ ├── DataChunk.cpp │ ├── DataChunk.h │ ├── Dds.cpp │ ├── Dds.h │ ├── FileNotFoundException.cpp │ ├── FileNotFoundException.h │ ├── FileUtil.cpp │ ├── FileUtil.h │ ├── Font.cpp │ ├── Font.h │ ├── Grp.cpp │ ├── Grp.h │ ├── Hurricane.cpp │ ├── Hurricane.h │ ├── ImagesConverter.cpp │ ├── ImagesConverter.h │ ├── KaitaiConverter.cpp │ ├── KaitaiConverter.h │ ├── Logger.h │ ├── NoValidPaletteException.cpp │ ├── NoValidPaletteException.h │ ├── Palette.cpp │ ├── Palette.h │ ├── Palette2D.cpp │ ├── Palette2D.h │ ├── PaletteImage.cpp │ ├── PaletteImage.h │ ├── Panel.cpp │ ├── Panel.h │ ├── Pcx.cpp │ ├── Pcx.h │ ├── PngExporter.cpp │ ├── PngExporter.h │ ├── PortraitsConverter.cpp │ ├── PortraitsConverter.h │ ├── Pos.h │ ├── Preferences.cpp │ ├── Preferences.h │ ├── Scm.cpp │ ├── Scm.h │ ├── SfxConverter.cpp │ ├── SfxConverter.h │ ├── Size.h │ ├── Smacker.cpp │ ├── Smacker.h │ ├── Storage.cpp │ ├── Storage.h │ ├── Storm.cpp │ ├── Storm.h │ ├── StringUtil.cpp │ ├── StringUtil.h │ ├── UIConsole.cpp │ ├── UIConsole.h │ ├── UnitsConverter.cpp │ ├── UnitsConverter.h │ ├── Wav.cpp │ ├── Wav.h │ ├── Widgets.cpp │ ├── Widgets.h │ ├── WorldMap.cpp │ ├── WorldMap.h │ ├── dat/ │ │ ├── DataHub.cpp │ │ ├── DataHub.h │ │ ├── Flingy.cpp │ │ ├── Flingy.h │ │ ├── IScript.cpp │ │ ├── IScript.h │ │ ├── Image.cpp │ │ ├── Image.h │ │ ├── ObjectAccess.h │ │ ├── Order.cpp │ │ ├── Order.h │ │ ├── Portrait.cpp │ │ ├── Portrait.h │ │ ├── PropertyNotAvailableException.cpp │ │ ├── PropertyNotAvailableException.h │ │ ├── Sfx.cpp │ │ ├── Sfx.h │ │ ├── Sprite.cpp │ │ ├── Sprite.h │ │ ├── Tbl.cpp │ │ ├── Tbl.h │ │ ├── TblEntry.cpp │ │ ├── TblEntry.h │ │ ├── Techdata.cpp │ │ ├── Techdata.h │ │ ├── Unit.cpp │ │ ├── Unit.h │ │ ├── Upgrade.cpp │ │ ├── Upgrade.h │ │ ├── Weapon.cpp │ │ ├── Weapon.h │ │ └── meson.build │ ├── endian.h │ ├── kaitai/ │ │ ├── custom_decoder.h │ │ ├── exceptions.h │ │ ├── file_tbl.cpp │ │ ├── file_tbl.h │ │ ├── file_tbl.ksy │ │ ├── flingy_dat.cpp │ │ ├── flingy_dat.h │ │ ├── flingy_dat.ksy │ │ ├── images_dat.cpp │ │ ├── images_dat.h │ │ ├── images_dat.ksy │ │ ├── iscript_bin.cpp │ │ ├── iscript_bin.h │ │ ├── iscript_bin.ksy │ │ ├── kaitai_generate.sh │ │ ├── kaitaistream.cpp │ │ ├── kaitaistream.h │ │ ├── kaitaistruct.h │ │ ├── mapdata_dat.cpp │ │ ├── mapdata_dat.h │ │ ├── mapdata_dat.ksy │ │ ├── meson.build │ │ ├── opcode_list_type.cpp │ │ ├── opcode_list_type.h │ │ ├── orders_dat.cpp │ │ ├── orders_dat.h │ │ ├── orders_dat.ksy │ │ ├── portdata_dat.cpp │ │ ├── portdata_dat.h │ │ ├── portdata_dat.ksy │ │ ├── sfxdata_dat.cpp │ │ ├── sfxdata_dat.h │ │ ├── sfxdata_dat.ksy │ │ ├── sprites_dat.cpp │ │ ├── sprites_dat.h │ │ ├── sprites_dat.ksy │ │ ├── techdata_dat.cpp │ │ ├── techdata_dat.h │ │ ├── techdata_dat.ksy │ │ ├── tileset_cv5.cpp │ │ ├── tileset_cv5.h │ │ ├── tileset_cv5.ksy │ │ ├── tileset_dddata_bin.cpp │ │ ├── tileset_dddata_bin.h │ │ ├── tileset_dddata_bin.ksy │ │ ├── tileset_vf4.cpp │ │ ├── tileset_vf4.h │ │ ├── tileset_vf4.ksy │ │ ├── tileset_vr4.cpp │ │ ├── tileset_vr4.h │ │ ├── tileset_vr4.ksy │ │ ├── tileset_vx4.cpp │ │ ├── tileset_vx4.h │ │ ├── tileset_vx4.ksy │ │ ├── units_dat.cpp │ │ ├── units_dat.h │ │ ├── units_dat.ksy │ │ ├── upgrades_dat.cpp │ │ ├── upgrades_dat.h │ │ ├── upgrades_dat.ksy │ │ ├── weapons_dat.cpp │ │ ├── weapons_dat.h │ │ └── weapons_dat.ksy │ ├── libgrp/ │ │ ├── Exceptions/ │ │ │ ├── GRPException.cpp │ │ │ ├── GRPException.hpp │ │ │ ├── GRPFrame/ │ │ │ │ ├── GRPFrameException.cpp │ │ │ │ └── GRPFrameException.hpp │ │ │ └── GRPImage/ │ │ │ ├── GRPImageException.cpp │ │ │ └── GRPImageException.hpp │ │ ├── GRPFrame/ │ │ │ ├── GRPFrame.cpp │ │ │ └── GRPFrame.hpp │ │ ├── GRPImage/ │ │ │ ├── GRPImage.cpp │ │ │ └── GRPImage.hpp │ │ ├── libgrp.cpp │ │ ├── libgrp.hpp │ │ └── meson.build │ ├── luagen.cpp │ ├── luagen.h │ ├── meson.build │ ├── optionparser.h │ ├── optparser.h │ ├── pacman.cpp │ ├── pacman.h │ ├── platform.cpp │ ├── platform.h │ ├── stargus.cpp │ ├── startool.cpp │ ├── startool.h │ ├── startool_cd.h │ ├── startool_mpq.h │ ├── startool_rm.h │ └── tileset/ │ ├── MegaTile.cpp │ ├── MegaTile.h │ ├── TiledPaletteImage.cpp │ ├── TiledPaletteImage.h │ ├── TilesetHub.cpp │ ├── TilesetHub.h │ └── meson.build ├── stargus.desktop.in ├── stargus.nsi ├── stargus.rc ├── subprojects/ │ ├── StormLib.wrap │ ├── bzip2.wrap │ ├── libpng.wrap │ ├── nlohmann_json/ │ │ ├── .clang-format │ │ ├── .clang-tidy │ │ ├── .drone.yml │ │ ├── .gitignore │ │ ├── CITATION.cff │ │ ├── CMakeLists.txt │ │ ├── CODE_OF_CONDUCT.md │ │ ├── ChangeLog.md │ │ ├── LICENSE.MIT │ │ ├── Makefile │ │ ├── README.md │ │ ├── appveyor.yml │ │ ├── benchmarks/ │ │ │ ├── CMakeLists.txt │ │ │ └── src/ │ │ │ └── benchmarks.cpp │ │ ├── cmake/ │ │ │ ├── ci.cmake │ │ │ ├── config.cmake.in │ │ │ ├── download_test_data.cmake │ │ │ ├── nlohmann_jsonConfigVersion.cmake.in │ │ │ └── pkg-config.pc.in │ │ ├── doc/ │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── docset/ │ │ │ │ ├── Info.plist │ │ │ │ ├── Makefile │ │ │ │ ├── README.md │ │ │ │ ├── docSet.sql │ │ │ │ └── docset.json │ │ │ ├── examples/ │ │ │ │ ├── README.cpp │ │ │ │ ├── README.output │ │ │ │ ├── accept__string.cpp │ │ │ │ ├── accept__string.output │ │ │ │ ├── array.cpp │ │ │ │ ├── array.output │ │ │ │ ├── array_t.cpp │ │ │ │ ├── array_t.output │ │ │ │ ├── at__object_t_key_type.cpp │ │ │ │ ├── at__object_t_key_type.output │ │ │ │ ├── at__object_t_key_type_const.cpp │ │ │ │ ├── at__object_t_key_type_const.output │ │ │ │ ├── at__size_type.cpp │ │ │ │ ├── at__size_type.output │ │ │ │ ├── at__size_type_const.cpp │ │ │ │ ├── at__size_type_const.output │ │ │ │ ├── at_json_pointer.cpp │ │ │ │ ├── at_json_pointer.output │ │ │ │ ├── at_json_pointer_const.cpp │ │ │ │ ├── at_json_pointer_const.output │ │ │ │ ├── back.cpp │ │ │ │ ├── back.output │ │ │ │ ├── basic_json__CompatibleType.cpp │ │ │ │ ├── basic_json__CompatibleType.output │ │ │ │ ├── basic_json__InputIt_InputIt.cpp │ │ │ │ ├── basic_json__InputIt_InputIt.output │ │ │ │ ├── basic_json__basic_json.cpp │ │ │ │ ├── basic_json__basic_json.output │ │ │ │ ├── basic_json__copyassignment.cpp │ │ │ │ ├── basic_json__copyassignment.output │ │ │ │ ├── basic_json__list_init_t.cpp │ │ │ │ ├── basic_json__list_init_t.output │ │ │ │ ├── basic_json__moveconstructor.cpp │ │ │ │ ├── basic_json__moveconstructor.output │ │ │ │ ├── basic_json__nullptr_t.cpp │ │ │ │ ├── basic_json__nullptr_t.output │ │ │ │ ├── basic_json__size_type_basic_json.cpp │ │ │ │ ├── basic_json__size_type_basic_json.output │ │ │ │ ├── basic_json__value.cpp │ │ │ │ ├── basic_json__value.output │ │ │ │ ├── basic_json__value_ptr.cpp │ │ │ │ ├── basic_json__value_ptr.output │ │ │ │ ├── basic_json__value_t.cpp │ │ │ │ ├── basic_json__value_t.output │ │ │ │ ├── begin.cpp │ │ │ │ ├── begin.output │ │ │ │ ├── binary.cpp │ │ │ │ ├── binary.output │ │ │ │ ├── binary_t.cpp │ │ │ │ ├── binary_t.output │ │ │ │ ├── boolean_t.cpp │ │ │ │ ├── boolean_t.output │ │ │ │ ├── cbegin.cpp │ │ │ │ ├── cbegin.output │ │ │ │ ├── cend.cpp │ │ │ │ ├── cend.output │ │ │ │ ├── clear.cpp │ │ │ │ ├── clear.output │ │ │ │ ├── contains.cpp │ │ │ │ ├── contains.output │ │ │ │ ├── contains_json_pointer.cpp │ │ │ │ ├── contains_json_pointer.output │ │ │ │ ├── count.cpp │ │ │ │ ├── count.output │ │ │ │ ├── crbegin.cpp │ │ │ │ ├── crbegin.output │ │ │ │ ├── crend.cpp │ │ │ │ ├── crend.output │ │ │ │ ├── diagnostics_extended.cpp │ │ │ │ ├── diagnostics_extended.output │ │ │ │ ├── diagnostics_standard.cpp │ │ │ │ ├── diagnostics_standard.output │ │ │ │ ├── diff.cpp │ │ │ │ ├── diff.output │ │ │ │ ├── dump.cpp │ │ │ │ ├── dump.output │ │ │ │ ├── emplace.cpp │ │ │ │ ├── emplace.output │ │ │ │ ├── emplace_back.cpp │ │ │ │ ├── emplace_back.output │ │ │ │ ├── empty.cpp │ │ │ │ ├── empty.output │ │ │ │ ├── end.cpp │ │ │ │ ├── end.output │ │ │ │ ├── erase__IteratorType.cpp │ │ │ │ ├── erase__IteratorType.output │ │ │ │ ├── erase__IteratorType_IteratorType.cpp │ │ │ │ ├── erase__IteratorType_IteratorType.output │ │ │ │ ├── erase__key_type.cpp │ │ │ │ ├── erase__key_type.output │ │ │ │ ├── erase__size_type.cpp │ │ │ │ ├── erase__size_type.output │ │ │ │ ├── exception.cpp │ │ │ │ ├── exception.output │ │ │ │ ├── find__key_type.cpp │ │ │ │ ├── find__key_type.output │ │ │ │ ├── flatten.cpp │ │ │ │ ├── flatten.output │ │ │ │ ├── from_bson.cpp │ │ │ │ ├── from_bson.output │ │ │ │ ├── from_cbor.cpp │ │ │ │ ├── from_cbor.output │ │ │ │ ├── from_msgpack.cpp │ │ │ │ ├── from_msgpack.output │ │ │ │ ├── from_ubjson.cpp │ │ │ │ ├── from_ubjson.output │ │ │ │ ├── front.cpp │ │ │ │ ├── front.output │ │ │ │ ├── get__PointerType.cpp │ │ │ │ ├── get__PointerType.output │ │ │ │ ├── get__ValueType_const.cpp │ │ │ │ ├── get__ValueType_const.output │ │ │ │ ├── get_binary.cpp │ │ │ │ ├── get_binary.output │ │ │ │ ├── get_ptr.cpp │ │ │ │ ├── get_ptr.output │ │ │ │ ├── get_ref.cpp │ │ │ │ ├── get_ref.output │ │ │ │ ├── get_to.cpp │ │ │ │ ├── get_to.output │ │ │ │ ├── insert.cpp │ │ │ │ ├── insert.output │ │ │ │ ├── insert__count.cpp │ │ │ │ ├── insert__count.output │ │ │ │ ├── insert__ilist.cpp │ │ │ │ ├── insert__ilist.output │ │ │ │ ├── insert__range.cpp │ │ │ │ ├── insert__range.output │ │ │ │ ├── insert__range_object.cpp │ │ │ │ ├── insert__range_object.output │ │ │ │ ├── invalid_iterator.cpp │ │ │ │ ├── invalid_iterator.output │ │ │ │ ├── is_array.cpp │ │ │ │ ├── is_array.output │ │ │ │ ├── is_binary.cpp │ │ │ │ ├── is_binary.output │ │ │ │ ├── is_boolean.cpp │ │ │ │ ├── is_boolean.output │ │ │ │ ├── is_discarded.cpp │ │ │ │ ├── is_discarded.output │ │ │ │ ├── is_null.cpp │ │ │ │ ├── is_null.output │ │ │ │ ├── is_number.cpp │ │ │ │ ├── is_number.output │ │ │ │ ├── is_number_float.cpp │ │ │ │ ├── is_number_float.output │ │ │ │ ├── is_number_integer.cpp │ │ │ │ ├── is_number_integer.output │ │ │ │ ├── is_number_unsigned.cpp │ │ │ │ ├── is_number_unsigned.output │ │ │ │ ├── is_object.cpp │ │ │ │ ├── is_object.output │ │ │ │ ├── is_primitive.cpp │ │ │ │ ├── is_primitive.output │ │ │ │ ├── is_string.cpp │ │ │ │ ├── is_string.output │ │ │ │ ├── is_structured.cpp │ │ │ │ ├── is_structured.output │ │ │ │ ├── items.cpp │ │ │ │ ├── items.output │ │ │ │ ├── iterator_wrapper.cpp │ │ │ │ ├── iterator_wrapper.output │ │ │ │ ├── json_pointer.cpp │ │ │ │ ├── json_pointer.output │ │ │ │ ├── json_pointer__back.cpp │ │ │ │ ├── json_pointer__back.output │ │ │ │ ├── json_pointer__empty.cpp │ │ │ │ ├── json_pointer__empty.output │ │ │ │ ├── json_pointer__operator_add.cpp │ │ │ │ ├── json_pointer__operator_add.output │ │ │ │ ├── json_pointer__operator_add_binary.cpp │ │ │ │ ├── json_pointer__operator_add_binary.output │ │ │ │ ├── json_pointer__parent_pointer.cpp │ │ │ │ ├── json_pointer__parent_pointer.output │ │ │ │ ├── json_pointer__pop_back.cpp │ │ │ │ ├── json_pointer__pop_back.output │ │ │ │ ├── json_pointer__push_back.cpp │ │ │ │ ├── json_pointer__push_back.output │ │ │ │ ├── json_pointer__to_string.cpp │ │ │ │ ├── json_pointer__to_string.output │ │ │ │ ├── max_size.cpp │ │ │ │ ├── max_size.output │ │ │ │ ├── merge_patch.cpp │ │ │ │ ├── merge_patch.output │ │ │ │ ├── meta.cpp │ │ │ │ ├── meta.output │ │ │ │ ├── number_float_t.cpp │ │ │ │ ├── number_float_t.output │ │ │ │ ├── number_integer_t.cpp │ │ │ │ ├── number_integer_t.output │ │ │ │ ├── number_unsigned_t.cpp │ │ │ │ ├── number_unsigned_t.output │ │ │ │ ├── object.cpp │ │ │ │ ├── object.output │ │ │ │ ├── object_t.cpp │ │ │ │ ├── object_t.output │ │ │ │ ├── operator__ValueType.cpp │ │ │ │ ├── operator__ValueType.output │ │ │ │ ├── operator__equal.cpp │ │ │ │ ├── operator__equal.output │ │ │ │ ├── operator__equal__nullptr_t.cpp │ │ │ │ ├── operator__equal__nullptr_t.output │ │ │ │ ├── operator__greater.cpp │ │ │ │ ├── operator__greater.output │ │ │ │ ├── operator__greaterequal.cpp │ │ │ │ ├── operator__greaterequal.output │ │ │ │ ├── operator__less.cpp │ │ │ │ ├── operator__less.output │ │ │ │ ├── operator__lessequal.cpp │ │ │ │ ├── operator__lessequal.output │ │ │ │ ├── operator__notequal.cpp │ │ │ │ ├── operator__notequal.output │ │ │ │ ├── operator__notequal__nullptr_t.cpp │ │ │ │ ├── operator__notequal__nullptr_t.output │ │ │ │ ├── operator__value_t.cpp │ │ │ │ ├── operator__value_t.output │ │ │ │ ├── operator_deserialize.cpp │ │ │ │ ├── operator_deserialize.output │ │ │ │ ├── operator_literal_json.cpp │ │ │ │ ├── operator_literal_json.output │ │ │ │ ├── operator_literal_json_pointer.cpp │ │ │ │ ├── operator_literal_json_pointer.output │ │ │ │ ├── operator_serialize.cpp │ │ │ │ ├── operator_serialize.output │ │ │ │ ├── operatorarray__key_type.cpp │ │ │ │ ├── operatorarray__key_type.output │ │ │ │ ├── operatorarray__key_type_const.cpp │ │ │ │ ├── operatorarray__key_type_const.output │ │ │ │ ├── operatorarray__size_type.cpp │ │ │ │ ├── operatorarray__size_type.output │ │ │ │ ├── operatorarray__size_type_const.cpp │ │ │ │ ├── operatorarray__size_type_const.output │ │ │ │ ├── operatorjson_pointer.cpp │ │ │ │ ├── operatorjson_pointer.output │ │ │ │ ├── operatorjson_pointer_const.cpp │ │ │ │ ├── operatorjson_pointer_const.output │ │ │ │ ├── ordered_map.cpp │ │ │ │ ├── ordered_map.output │ │ │ │ ├── other_error.cpp │ │ │ │ ├── other_error.output │ │ │ │ ├── out_of_range.cpp │ │ │ │ ├── out_of_range.output │ │ │ │ ├── parse__allow_exceptions.cpp │ │ │ │ ├── parse__allow_exceptions.output │ │ │ │ ├── parse__array__parser_callback_t.cpp │ │ │ │ ├── parse__array__parser_callback_t.output │ │ │ │ ├── parse__contiguouscontainer__parser_callback_t.cpp │ │ │ │ ├── parse__contiguouscontainer__parser_callback_t.output │ │ │ │ ├── parse__istream__parser_callback_t.cpp │ │ │ │ ├── parse__istream__parser_callback_t.output │ │ │ │ ├── parse__iterator_pair.cpp │ │ │ │ ├── parse__iterator_pair.link │ │ │ │ ├── parse__iterator_pair.output │ │ │ │ ├── parse__pointers.cpp │ │ │ │ ├── parse__pointers.link │ │ │ │ ├── parse__pointers.output │ │ │ │ ├── parse__string__parser_callback_t.cpp │ │ │ │ ├── parse__string__parser_callback_t.output │ │ │ │ ├── parse_error.cpp │ │ │ │ ├── parse_error.output │ │ │ │ ├── patch.cpp │ │ │ │ ├── patch.output │ │ │ │ ├── push_back.cpp │ │ │ │ ├── push_back.output │ │ │ │ ├── push_back__initializer_list.cpp │ │ │ │ ├── push_back__initializer_list.output │ │ │ │ ├── push_back__object_t__value.cpp │ │ │ │ ├── push_back__object_t__value.output │ │ │ │ ├── rbegin.cpp │ │ │ │ ├── rbegin.output │ │ │ │ ├── rend.cpp │ │ │ │ ├── rend.output │ │ │ │ ├── sax_parse.cpp │ │ │ │ ├── sax_parse.output │ │ │ │ ├── size.cpp │ │ │ │ ├── size.output │ │ │ │ ├── std_hash.cpp │ │ │ │ ├── std_hash.output │ │ │ │ ├── std_swap.cpp │ │ │ │ ├── std_swap.output │ │ │ │ ├── string_t.cpp │ │ │ │ ├── string_t.output │ │ │ │ ├── swap__array_t.cpp │ │ │ │ ├── swap__array_t.output │ │ │ │ ├── swap__binary_t.cpp │ │ │ │ ├── swap__binary_t.output │ │ │ │ ├── swap__object_t.cpp │ │ │ │ ├── swap__object_t.output │ │ │ │ ├── swap__reference.cpp │ │ │ │ ├── swap__reference.output │ │ │ │ ├── swap__string_t.cpp │ │ │ │ ├── swap__string_t.output │ │ │ │ ├── to_bson.cpp │ │ │ │ ├── to_bson.output │ │ │ │ ├── to_cbor.cpp │ │ │ │ ├── to_cbor.output │ │ │ │ ├── to_msgpack.cpp │ │ │ │ ├── to_msgpack.output │ │ │ │ ├── to_string.cpp │ │ │ │ ├── to_string.output │ │ │ │ ├── to_ubjson.cpp │ │ │ │ ├── to_ubjson.output │ │ │ │ ├── type.cpp │ │ │ │ ├── type.output │ │ │ │ ├── type_error.cpp │ │ │ │ ├── type_error.output │ │ │ │ ├── type_name.cpp │ │ │ │ ├── type_name.output │ │ │ │ ├── unflatten.cpp │ │ │ │ ├── unflatten.output │ │ │ │ ├── update.cpp │ │ │ │ ├── update.output │ │ │ │ ├── update__range.cpp │ │ │ │ └── update__range.output │ │ │ ├── index.md │ │ │ └── mkdocs/ │ │ │ ├── Makefile │ │ │ ├── docs/ │ │ │ │ ├── api/ │ │ │ │ │ ├── adl_serializer/ │ │ │ │ │ │ ├── from_json.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ └── to_json.md │ │ │ │ │ ├── basic_json/ │ │ │ │ │ │ ├── accept.md │ │ │ │ │ │ ├── array.md │ │ │ │ │ │ ├── array_t.md │ │ │ │ │ │ ├── at.md │ │ │ │ │ │ ├── back.md │ │ │ │ │ │ ├── basic_json.md │ │ │ │ │ │ ├── begin.md │ │ │ │ │ │ ├── binary.md │ │ │ │ │ │ ├── binary_t.md │ │ │ │ │ │ ├── boolean_t.md │ │ │ │ │ │ ├── cbegin.md │ │ │ │ │ │ ├── cbor_tag_handler_t.md │ │ │ │ │ │ ├── cend.md │ │ │ │ │ │ ├── clear.md │ │ │ │ │ │ ├── contains.md │ │ │ │ │ │ ├── count.md │ │ │ │ │ │ ├── crbegin.md │ │ │ │ │ │ ├── crend.md │ │ │ │ │ │ ├── diff.md │ │ │ │ │ │ ├── dump.md │ │ │ │ │ │ ├── emplace.md │ │ │ │ │ │ ├── emplace_back.md │ │ │ │ │ │ ├── empty.md │ │ │ │ │ │ ├── end.md │ │ │ │ │ │ ├── erase.md │ │ │ │ │ │ ├── error_handler_t.md │ │ │ │ │ │ ├── exception.md │ │ │ │ │ │ ├── find.md │ │ │ │ │ │ ├── flatten.md │ │ │ │ │ │ ├── from_bson.md │ │ │ │ │ │ ├── from_cbor.md │ │ │ │ │ │ ├── from_msgpack.md │ │ │ │ │ │ ├── from_ubjson.md │ │ │ │ │ │ ├── front.md │ │ │ │ │ │ ├── get.md │ │ │ │ │ │ ├── get_allocator.md │ │ │ │ │ │ ├── get_binary.md │ │ │ │ │ │ ├── get_ptr.md │ │ │ │ │ │ ├── get_ref.md │ │ │ │ │ │ ├── get_to.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── input_format_t.md │ │ │ │ │ │ ├── insert.md │ │ │ │ │ │ ├── invalid_iterator.md │ │ │ │ │ │ ├── is_array.md │ │ │ │ │ │ ├── is_binary.md │ │ │ │ │ │ ├── is_boolean.md │ │ │ │ │ │ ├── is_discarded.md │ │ │ │ │ │ ├── is_null.md │ │ │ │ │ │ ├── is_number.md │ │ │ │ │ │ ├── is_number_float.md │ │ │ │ │ │ ├── is_number_integer.md │ │ │ │ │ │ ├── is_number_unsigned.md │ │ │ │ │ │ ├── is_object.md │ │ │ │ │ │ ├── is_primitive.md │ │ │ │ │ │ ├── is_string.md │ │ │ │ │ │ ├── is_structured.md │ │ │ │ │ │ ├── items.md │ │ │ │ │ │ ├── json_serializer.md │ │ │ │ │ │ ├── max_size.md │ │ │ │ │ │ ├── merge_patch.md │ │ │ │ │ │ ├── meta.md │ │ │ │ │ │ ├── number_float_t.md │ │ │ │ │ │ ├── number_integer_t.md │ │ │ │ │ │ ├── number_unsigned_t.md │ │ │ │ │ │ ├── object.md │ │ │ │ │ │ ├── object_comparator_t.md │ │ │ │ │ │ ├── object_t.md │ │ │ │ │ │ ├── operator+=.md │ │ │ │ │ │ ├── operator=.md │ │ │ │ │ │ ├── operator[].md │ │ │ │ │ │ ├── operator_ValueType.md │ │ │ │ │ │ ├── operator_eq.md │ │ │ │ │ │ ├── operator_ge.md │ │ │ │ │ │ ├── operator_gt.md │ │ │ │ │ │ ├── operator_gtgt.md │ │ │ │ │ │ ├── operator_le.md │ │ │ │ │ │ ├── operator_literal_json.md │ │ │ │ │ │ ├── operator_literal_json_pointer.md │ │ │ │ │ │ ├── operator_lt.md │ │ │ │ │ │ ├── operator_ltlt.md │ │ │ │ │ │ ├── operator_ne.md │ │ │ │ │ │ ├── operator_value_t.md │ │ │ │ │ │ ├── other_error.md │ │ │ │ │ │ ├── out_of_range.md │ │ │ │ │ │ ├── parse.md │ │ │ │ │ │ ├── parse_error.md │ │ │ │ │ │ ├── parse_event_t.md │ │ │ │ │ │ ├── parser_callback_t.md │ │ │ │ │ │ ├── patch.md │ │ │ │ │ │ ├── push_back.md │ │ │ │ │ │ ├── rbegin.md │ │ │ │ │ │ ├── rend.md │ │ │ │ │ │ ├── sax_parse.md │ │ │ │ │ │ ├── size.md │ │ │ │ │ │ ├── std_hash.md │ │ │ │ │ │ ├── std_swap.md │ │ │ │ │ │ ├── string_t.md │ │ │ │ │ │ ├── swap.md │ │ │ │ │ │ ├── to_bson.md │ │ │ │ │ │ ├── to_cbor.md │ │ │ │ │ │ ├── to_msgpack.md │ │ │ │ │ │ ├── to_string.md │ │ │ │ │ │ ├── to_ubjson.md │ │ │ │ │ │ ├── type.md │ │ │ │ │ │ ├── type_error.md │ │ │ │ │ │ ├── type_name.md │ │ │ │ │ │ ├── unflatten.md │ │ │ │ │ │ ├── update.md │ │ │ │ │ │ ├── value.md │ │ │ │ │ │ ├── value_t.md │ │ │ │ │ │ └── ~basic_json.md │ │ │ │ │ ├── byte_container_with_subtype/ │ │ │ │ │ │ ├── byte_container_with_subtype.md │ │ │ │ │ │ ├── clear_subtype.md │ │ │ │ │ │ ├── has_subtype.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── set_subtype.md │ │ │ │ │ │ └── subtype.md │ │ │ │ │ ├── json.md │ │ │ │ │ ├── json_pointer/ │ │ │ │ │ │ ├── back.md │ │ │ │ │ │ ├── empty.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── json_pointer.md │ │ │ │ │ │ ├── operator_slash.md │ │ │ │ │ │ ├── operator_slasheq.md │ │ │ │ │ │ ├── operator_string.md │ │ │ │ │ │ ├── parent_pointer.md │ │ │ │ │ │ ├── pop_back.md │ │ │ │ │ │ ├── push_back.md │ │ │ │ │ │ └── to_string.md │ │ │ │ │ ├── json_sax/ │ │ │ │ │ │ ├── binary.md │ │ │ │ │ │ ├── boolean.md │ │ │ │ │ │ ├── end_array.md │ │ │ │ │ │ ├── end_object.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── key.md │ │ │ │ │ │ ├── null.md │ │ │ │ │ │ ├── number_float.md │ │ │ │ │ │ ├── number_integer.md │ │ │ │ │ │ ├── number_unsigned.md │ │ │ │ │ │ ├── parse_error.md │ │ │ │ │ │ ├── start_array.md │ │ │ │ │ │ ├── start_object.md │ │ │ │ │ │ └── string.md │ │ │ │ │ ├── macros/ │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ └── json_assert.md │ │ │ │ │ ├── ordered_json.md │ │ │ │ │ └── ordered_map.md │ │ │ │ ├── features/ │ │ │ │ │ ├── arbitrary_types.md │ │ │ │ │ ├── binary_formats/ │ │ │ │ │ │ ├── bson.md │ │ │ │ │ │ ├── cbor.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── messagepack.md │ │ │ │ │ │ └── ubjson.md │ │ │ │ │ ├── binary_values.md │ │ │ │ │ ├── comments.md │ │ │ │ │ ├── element_access/ │ │ │ │ │ │ ├── checked_access.md │ │ │ │ │ │ ├── default_value.md │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ └── unchecked_access.md │ │ │ │ │ ├── enum_conversion.md │ │ │ │ │ ├── iterators.md │ │ │ │ │ ├── json_patch.md │ │ │ │ │ ├── json_pointer.md │ │ │ │ │ ├── macros.md │ │ │ │ │ ├── merge_patch.md │ │ │ │ │ ├── object_order.md │ │ │ │ │ ├── parsing/ │ │ │ │ │ │ ├── index.md │ │ │ │ │ │ ├── parse_exceptions.md │ │ │ │ │ │ ├── parser_callbacks.md │ │ │ │ │ │ └── sax_interface.md │ │ │ │ │ └── types/ │ │ │ │ │ ├── index.md │ │ │ │ │ └── number_handling.md │ │ │ │ ├── home/ │ │ │ │ │ ├── code_of_conduct.md │ │ │ │ │ ├── design_goals.md │ │ │ │ │ ├── exceptions.md │ │ │ │ │ ├── faq.md │ │ │ │ │ ├── license.md │ │ │ │ │ ├── releases.md │ │ │ │ │ └── sponsors.md │ │ │ │ ├── index.md │ │ │ │ └── integration/ │ │ │ │ ├── cmake.md │ │ │ │ ├── conan/ │ │ │ │ │ ├── CMakeLists.txt │ │ │ │ │ ├── Conanfile.txt │ │ │ │ │ └── example.cpp │ │ │ │ ├── example.cpp │ │ │ │ ├── index.md │ │ │ │ ├── package_managers.md │ │ │ │ ├── pkg-config.md │ │ │ │ └── vcpkg/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── example.cpp │ │ │ ├── mkdocs.yml │ │ │ ├── requirements.txt │ │ │ └── scripts/ │ │ │ └── check_structure.py │ │ ├── include/ │ │ │ └── nlohmann/ │ │ │ ├── adl_serializer.hpp │ │ │ ├── byte_container_with_subtype.hpp │ │ │ ├── detail/ │ │ │ │ ├── conversions/ │ │ │ │ │ ├── from_json.hpp │ │ │ │ │ ├── to_chars.hpp │ │ │ │ │ └── to_json.hpp │ │ │ │ ├── exceptions.hpp │ │ │ │ ├── hash.hpp │ │ │ │ ├── input/ │ │ │ │ │ ├── binary_reader.hpp │ │ │ │ │ ├── input_adapters.hpp │ │ │ │ │ ├── json_sax.hpp │ │ │ │ │ ├── lexer.hpp │ │ │ │ │ ├── parser.hpp │ │ │ │ │ └── position_t.hpp │ │ │ │ ├── iterators/ │ │ │ │ │ ├── internal_iterator.hpp │ │ │ │ │ ├── iter_impl.hpp │ │ │ │ │ ├── iteration_proxy.hpp │ │ │ │ │ ├── iterator_traits.hpp │ │ │ │ │ ├── json_reverse_iterator.hpp │ │ │ │ │ └── primitive_iterator.hpp │ │ │ │ ├── json_pointer.hpp │ │ │ │ ├── json_ref.hpp │ │ │ │ ├── macro_scope.hpp │ │ │ │ ├── macro_unscope.hpp │ │ │ │ ├── meta/ │ │ │ │ │ ├── call_std/ │ │ │ │ │ │ ├── begin.hpp │ │ │ │ │ │ └── end.hpp │ │ │ │ │ ├── cpp_future.hpp │ │ │ │ │ ├── detected.hpp │ │ │ │ │ ├── identity_tag.hpp │ │ │ │ │ ├── is_sax.hpp │ │ │ │ │ ├── type_traits.hpp │ │ │ │ │ └── void_t.hpp │ │ │ │ ├── output/ │ │ │ │ │ ├── binary_writer.hpp │ │ │ │ │ ├── output_adapters.hpp │ │ │ │ │ └── serializer.hpp │ │ │ │ ├── string_escape.hpp │ │ │ │ └── value_t.hpp │ │ │ ├── json.hpp │ │ │ ├── json_fwd.hpp │ │ │ ├── ordered_map.hpp │ │ │ └── thirdparty/ │ │ │ └── hedley/ │ │ │ ├── hedley.hpp │ │ │ └── hedley_undef.hpp │ │ ├── meson.build │ │ ├── nlohmann_json.natvis │ │ ├── single_include/ │ │ │ └── nlohmann/ │ │ │ └── json.hpp │ │ ├── test/ │ │ │ ├── CMakeLists.txt │ │ │ ├── Makefile │ │ │ ├── cmake_add_subdirectory/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── project/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── main.cpp │ │ │ ├── cmake_fetch_content/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── project/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── main.cpp │ │ │ ├── cmake_import/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── project/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── main.cpp │ │ │ ├── cmake_import_minver/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── project/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── main.cpp │ │ │ ├── cmake_target_include_directories/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── project/ │ │ │ │ ├── Bar.cpp │ │ │ │ ├── Bar.hpp │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── Foo.cpp │ │ │ │ ├── Foo.hpp │ │ │ │ └── main.cpp │ │ │ ├── cuda_example/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── json_cuda.cu │ │ │ ├── reports/ │ │ │ │ ├── 2016-08-29-fuzz/ │ │ │ │ │ ├── fuzz.tiff │ │ │ │ │ └── index.html │ │ │ │ ├── 2016-09-09-nativejson_benchmark/ │ │ │ │ │ ├── README.md │ │ │ │ │ └── conformance_Nlohmann (C++11).md │ │ │ │ └── 2016-10-02-fuzz/ │ │ │ │ ├── fuzz.tiff │ │ │ │ └── index.html │ │ │ ├── src/ │ │ │ │ ├── fuzzer-driver_afl.cpp │ │ │ │ ├── fuzzer-parse_bson.cpp │ │ │ │ ├── fuzzer-parse_cbor.cpp │ │ │ │ ├── fuzzer-parse_json.cpp │ │ │ │ ├── fuzzer-parse_msgpack.cpp │ │ │ │ ├── fuzzer-parse_ubjson.cpp │ │ │ │ ├── test_utils.hpp │ │ │ │ ├── unit-algorithms.cpp │ │ │ │ ├── unit-allocator.cpp │ │ │ │ ├── unit-alt-string.cpp │ │ │ │ ├── unit-assert_macro.cpp │ │ │ │ ├── unit-bson.cpp │ │ │ │ ├── unit-byte_container_with_subtype.cpp │ │ │ │ ├── unit-capacity.cpp │ │ │ │ ├── unit-cbor.cpp │ │ │ │ ├── unit-class_const_iterator.cpp │ │ │ │ ├── unit-class_iterator.cpp │ │ │ │ ├── unit-class_lexer.cpp │ │ │ │ ├── unit-class_parser.cpp │ │ │ │ ├── unit-comparison.cpp │ │ │ │ ├── unit-concepts.cpp │ │ │ │ ├── unit-constructor1.cpp │ │ │ │ ├── unit-constructor2.cpp │ │ │ │ ├── unit-convenience.cpp │ │ │ │ ├── unit-conversions.cpp │ │ │ │ ├── unit-deserialization.cpp │ │ │ │ ├── unit-diagnostics.cpp │ │ │ │ ├── unit-disabled_exceptions.cpp │ │ │ │ ├── unit-element_access1.cpp │ │ │ │ ├── unit-element_access2.cpp │ │ │ │ ├── unit-hash.cpp │ │ │ │ ├── unit-inspection.cpp │ │ │ │ ├── unit-items.cpp │ │ │ │ ├── unit-iterators1.cpp │ │ │ │ ├── unit-iterators2.cpp │ │ │ │ ├── unit-json_patch.cpp │ │ │ │ ├── unit-json_pointer.cpp │ │ │ │ ├── unit-large_json.cpp │ │ │ │ ├── unit-merge_patch.cpp │ │ │ │ ├── unit-meta.cpp │ │ │ │ ├── unit-modifiers.cpp │ │ │ │ ├── unit-msgpack.cpp │ │ │ │ ├── unit-noexcept.cpp │ │ │ │ ├── unit-ordered_json.cpp │ │ │ │ ├── unit-ordered_map.cpp │ │ │ │ ├── unit-pointer_access.cpp │ │ │ │ ├── unit-readme.cpp │ │ │ │ ├── unit-reference_access.cpp │ │ │ │ ├── unit-regression1.cpp │ │ │ │ ├── unit-regression2.cpp │ │ │ │ ├── unit-serialization.cpp │ │ │ │ ├── unit-testsuites.cpp │ │ │ │ ├── unit-to_chars.cpp │ │ │ │ ├── unit-ubjson.cpp │ │ │ │ ├── unit-udt.cpp │ │ │ │ ├── unit-udt_macro.cpp │ │ │ │ ├── unit-unicode1.cpp │ │ │ │ ├── unit-unicode2.cpp │ │ │ │ ├── unit-unicode3.cpp │ │ │ │ ├── unit-unicode4.cpp │ │ │ │ ├── unit-unicode5.cpp │ │ │ │ ├── unit-user_defined_input.cpp │ │ │ │ ├── unit-wstring.cpp │ │ │ │ └── unit.cpp │ │ │ └── thirdparty/ │ │ │ ├── Fuzzer/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── FuzzerCorpus.h │ │ │ │ ├── FuzzerCrossOver.cpp │ │ │ │ ├── FuzzerDefs.h │ │ │ │ ├── FuzzerDictionary.h │ │ │ │ ├── FuzzerDriver.cpp │ │ │ │ ├── FuzzerExtFunctions.def │ │ │ │ ├── FuzzerExtFunctions.h │ │ │ │ ├── FuzzerExtFunctionsDlsym.cpp │ │ │ │ ├── FuzzerExtFunctionsWeak.cpp │ │ │ │ ├── FuzzerExtFunctionsWeakAlias.cpp │ │ │ │ ├── FuzzerFlags.def │ │ │ │ ├── FuzzerIO.cpp │ │ │ │ ├── FuzzerIO.h │ │ │ │ ├── FuzzerIOPosix.cpp │ │ │ │ ├── FuzzerIOWindows.cpp │ │ │ │ ├── FuzzerInterface.h │ │ │ │ ├── FuzzerInternal.h │ │ │ │ ├── FuzzerLoop.cpp │ │ │ │ ├── FuzzerMain.cpp │ │ │ │ ├── FuzzerMerge.cpp │ │ │ │ ├── FuzzerMerge.h │ │ │ │ ├── FuzzerMutate.cpp │ │ │ │ ├── FuzzerMutate.h │ │ │ │ ├── FuzzerOptions.h │ │ │ │ ├── FuzzerRandom.h │ │ │ │ ├── FuzzerSHA1.cpp │ │ │ │ ├── FuzzerSHA1.h │ │ │ │ ├── FuzzerTracePC.cpp │ │ │ │ ├── FuzzerTracePC.h │ │ │ │ ├── FuzzerTraceState.cpp │ │ │ │ ├── FuzzerUtil.cpp │ │ │ │ ├── FuzzerUtil.h │ │ │ │ ├── FuzzerUtilDarwin.cpp │ │ │ │ ├── FuzzerUtilLinux.cpp │ │ │ │ ├── FuzzerUtilPosix.cpp │ │ │ │ ├── FuzzerUtilWindows.cpp │ │ │ │ ├── FuzzerValueBitMap.h │ │ │ │ ├── README.txt │ │ │ │ ├── afl/ │ │ │ │ │ └── afl_driver.cpp │ │ │ │ ├── build.sh │ │ │ │ ├── cxx.dict │ │ │ │ ├── standalone/ │ │ │ │ │ └── StandaloneFuzzTargetMain.c │ │ │ │ └── test/ │ │ │ │ ├── AFLDriverTest.cpp │ │ │ │ ├── AbsNegAndConstant64Test.cpp │ │ │ │ ├── AbsNegAndConstantTest.cpp │ │ │ │ ├── AccumulateAllocationsTest.cpp │ │ │ │ ├── BufferOverflowOnInput.cpp │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── CallerCalleeTest.cpp │ │ │ │ ├── CounterTest.cpp │ │ │ │ ├── CustomCrossOverTest.cpp │ │ │ │ ├── CustomMutatorTest.cpp │ │ │ │ ├── DSO1.cpp │ │ │ │ ├── DSO2.cpp │ │ │ │ ├── DSOTestExtra.cpp │ │ │ │ ├── DSOTestMain.cpp │ │ │ │ ├── DivTest.cpp │ │ │ │ ├── EmptyTest.cpp │ │ │ │ ├── FourIndependentBranchesTest.cpp │ │ │ │ ├── FullCoverageSetTest.cpp │ │ │ │ ├── FuzzerUnittest.cpp │ │ │ │ ├── InitializeTest.cpp │ │ │ │ ├── LeakTest.cpp │ │ │ │ ├── LeakTimeoutTest.cpp │ │ │ │ ├── LoadTest.cpp │ │ │ │ ├── MemcmpTest.cpp │ │ │ │ ├── NthRunCrashTest.cpp │ │ │ │ ├── NullDerefOnEmptyTest.cpp │ │ │ │ ├── NullDerefTest.cpp │ │ │ │ ├── OneHugeAllocTest.cpp │ │ │ │ ├── OutOfMemorySingleLargeMallocTest.cpp │ │ │ │ ├── OutOfMemoryTest.cpp │ │ │ │ ├── RepeatedBytesTest.cpp │ │ │ │ ├── RepeatedMemcmp.cpp │ │ │ │ ├── ShrinkControlFlowTest.cpp │ │ │ │ ├── ShrinkValueProfileTest.cpp │ │ │ │ ├── SignedIntOverflowTest.cpp │ │ │ │ ├── SimpleCmpTest.cpp │ │ │ │ ├── SimpleDictionaryTest.cpp │ │ │ │ ├── SimpleHashTest.cpp │ │ │ │ ├── SimpleTest.cpp │ │ │ │ ├── SimpleThreadedTest.cpp │ │ │ │ ├── SingleMemcmpTest.cpp │ │ │ │ ├── SingleStrcmpTest.cpp │ │ │ │ ├── SingleStrncmpTest.cpp │ │ │ │ ├── SpamyTest.cpp │ │ │ │ ├── StrcmpTest.cpp │ │ │ │ ├── StrncmpOOBTest.cpp │ │ │ │ ├── StrncmpTest.cpp │ │ │ │ ├── StrstrTest.cpp │ │ │ │ ├── SwapCmpTest.cpp │ │ │ │ ├── Switch2Test.cpp │ │ │ │ ├── SwitchTest.cpp │ │ │ │ ├── ThreadedLeakTest.cpp │ │ │ │ ├── ThreadedTest.cpp │ │ │ │ ├── TimeoutEmptyTest.cpp │ │ │ │ ├── TimeoutTest.cpp │ │ │ │ ├── TraceMallocTest.cpp │ │ │ │ ├── UninstrumentedTest.cpp │ │ │ │ ├── afl-driver-extra-stats.test │ │ │ │ ├── afl-driver-stderr.test │ │ │ │ ├── caller-callee.test │ │ │ │ ├── coverage.test │ │ │ │ ├── dict1.txt │ │ │ │ ├── dump_coverage.test │ │ │ │ ├── fuzzer-customcrossover.test │ │ │ │ ├── fuzzer-custommutator.test │ │ │ │ ├── fuzzer-dict.test │ │ │ │ ├── fuzzer-dirs.test │ │ │ │ ├── fuzzer-fdmask.test │ │ │ │ ├── fuzzer-finalstats.test │ │ │ │ ├── fuzzer-flags.test │ │ │ │ ├── fuzzer-jobs.test │ │ │ │ ├── fuzzer-leak.test │ │ │ │ ├── fuzzer-oom-with-profile.test │ │ │ │ ├── fuzzer-oom.test │ │ │ │ ├── fuzzer-printcovpcs.test │ │ │ │ ├── fuzzer-runs.test │ │ │ │ ├── fuzzer-seed.test │ │ │ │ ├── fuzzer-segv.test │ │ │ │ ├── fuzzer-singleinputs.test │ │ │ │ ├── fuzzer-threaded.test │ │ │ │ ├── fuzzer-timeout.test │ │ │ │ ├── fuzzer-traces-hooks.test │ │ │ │ ├── fuzzer-ubsan.test │ │ │ │ ├── fuzzer.test │ │ │ │ ├── hi.txt │ │ │ │ ├── lit.cfg │ │ │ │ ├── lit.site.cfg.in │ │ │ │ ├── merge.test │ │ │ │ ├── minimize_crash.test │ │ │ │ ├── no-coverage/ │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── repeated-bytes.test │ │ │ │ ├── shrink.test │ │ │ │ ├── simple-cmp.test │ │ │ │ ├── standalone.test │ │ │ │ ├── swap-cmp.test │ │ │ │ ├── trace-malloc.test │ │ │ │ ├── ubsan/ │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── ulimit.test │ │ │ │ ├── uninstrumented/ │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── unit/ │ │ │ │ │ ├── lit.cfg │ │ │ │ │ └── lit.site.cfg.in │ │ │ │ ├── value-profile-cmp.test │ │ │ │ ├── value-profile-cmp2.test │ │ │ │ ├── value-profile-cmp3.test │ │ │ │ ├── value-profile-cmp4.test │ │ │ │ ├── value-profile-div.test │ │ │ │ ├── value-profile-load.test │ │ │ │ ├── value-profile-mem.test │ │ │ │ ├── value-profile-set.test │ │ │ │ ├── value-profile-strcmp.test │ │ │ │ ├── value-profile-strncmp.test │ │ │ │ └── value-profile-switch.test │ │ │ ├── doctest/ │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── doctest.h │ │ │ │ └── doctest_compatibility.h │ │ │ ├── fifo_map/ │ │ │ │ ├── LICENSE.MIT │ │ │ │ └── fifo_map.hpp │ │ │ └── imapdl/ │ │ │ ├── filterbr.py │ │ │ └── gpl-3.0.txt │ │ ├── third_party/ │ │ │ ├── amalgamate/ │ │ │ │ ├── CHANGES.md │ │ │ │ ├── LICENSE.md │ │ │ │ ├── README.md │ │ │ │ ├── amalgamate.py │ │ │ │ └── config.json │ │ │ ├── cpplint/ │ │ │ │ ├── LICENSE │ │ │ │ ├── README.rst │ │ │ │ ├── cpplint.py │ │ │ │ └── update.sh │ │ │ ├── gdb_pretty_printer/ │ │ │ │ ├── README.md │ │ │ │ └── nlohmann-json.py │ │ │ └── macro_builder/ │ │ │ └── main.cpp │ │ └── wsjcpp.yml │ ├── nlohmann_json.wrap │ ├── packagefiles/ │ │ └── bzip2.patch │ ├── win-iconv/ │ │ ├── CMakeLists.txt │ │ ├── ChangeLog │ │ ├── FindWcecompat.cmake │ │ ├── Makefile │ │ ├── iconv.def │ │ ├── iconv.h │ │ ├── mlang.def │ │ ├── mlang.h │ │ ├── readme.txt │ │ ├── win_iconv.c │ │ └── win_iconv_test.c │ └── zlib.wrap ├── test/ │ ├── gamedata/ │ │ └── dat/ │ │ ├── CSVExporter.cpp │ │ ├── CSVExporter.h │ │ ├── DatTest.cpp │ │ └── meson.build │ ├── lua/ │ │ ├── CreateUnitLuaTest.cpp │ │ ├── CreateUnitLuaTest.h │ │ ├── LuaTest.cpp │ │ └── meson.build │ └── module/ │ ├── BreezeTest.cpp │ ├── BreezeTest.h │ ├── DataChunkTest.cpp │ ├── DataChunkTest.h │ ├── PcxTest.cpp │ ├── PcxTest.h │ ├── StormTest.cpp │ ├── StormTest.h │ ├── TestHelpers.cpp │ ├── TestHelpers.h │ ├── TestMain.cpp │ ├── TiledPaletteImageTest.cpp │ ├── TiledPaletteImageTest.h │ ├── data/ │ │ ├── PcxTest_red_zergb.pal │ │ ├── PcxTest_red_zergb.pcx │ │ ├── PcxTest_ticon.pcx │ │ ├── PcxTest_ticon_0.pal │ │ ├── PcxTest_ticon_1.pal │ │ ├── PcxTest_ticon_2.pal │ │ ├── PcxTest_ticon_3.pal │ │ ├── PcxTest_ticon_4.pal │ │ ├── PcxTest_ticon_5.pal │ │ ├── StormTest_test1_mpq_txt.mpq │ │ └── breezetest.txt │ ├── luagenTest.cpp │ ├── luagenTest.h │ └── meson.build └── tools/ ├── binreader.c ├── grptool/ │ ├── grptool.cpp │ └── meson.build ├── iscript.c ├── json_transition.cpp ├── meson.build ├── sauwetter/ │ ├── meson.build │ └── sauwetter.cpp ├── scdat2json/ │ ├── SCJsonExporter.cpp │ ├── SCJsonExporter.h │ ├── UnitsJsonExporter.cpp │ ├── UnitsJsonExporter.h │ ├── meson.build │ ├── scdat2json.cpp │ ├── to_json.cpp │ └── to_json.h ├── tblreader.c └── unit_dat.cpp