.coveragerc
.editorconfig
.travis.yml
LICENSE
MANIFEST.in
README.rst
setup.cfg
setup.py
tox.ini
bin/animate.ipynb
bin/animate_graph_reachables.py
bin/cloc.sh
bin/cloc_dirs.txt
bin/debug.ipynb
bin/draw.ipynb
bin/generate_tests.py
bin/mover_benchmarks.py
bin/mover_profiling.py
bin/profile.ipynb
docs/Makefile
docs/api.rst
docs/conf.py
docs/development.rst
docs/index.rst
docs/license.rst
docs/make.bat
docs/requirements.txt
docs/tutorial.rst
docs/_api/sokoenginepy.board.rst
docs/_api/sokoenginepy.exceptions.rst
docs/_api/sokoenginepy.game.rst
docs/_api/sokoenginepy.input_output.rst
docs/_api/sokoenginepy.settings.rst
docs/_api/sokoenginepy.snapshot.rst
docs/_api/sokoenginepy.tessellation.rst
docs/_api/sokoenginepy.utilities.rst
docs/_static/.gitkeep
docs/_templates/.gitkeep
docs/images/assigning_ids.png
docs/images/hexoban_coordinates.png
docs/images/hexoban_scheme1.png
docs/images/hexoban_scheme2.png
docs/images/movement_vs_transfer1.png
docs/images/movement_vs_transfer2.png
docs/images/movement_vs_transfer3.png
docs/images/pusher_on_box.png
docs/images/trioban_am.png
docs/internal/mover_test_cases.ods
docs/internal/hexoban/board_resizing.svgz
docs/internal/hexoban/board_transformations.svgz
docs/internal/hexoban/hexoban_tesselation.svgz
docs/internal/hexoban/textual_encoding_schemes.svgz
docs/internal/trioban/trioban_atomic_move.svgz
src/sokoenginepy/__init__.py
src/sokoenginepy/exceptions.py
src/sokoenginepy/settings.py
src/sokoenginepy.egg-info/PKG-INFO
src/sokoenginepy.egg-info/SOURCES.txt
src/sokoenginepy.egg-info/dependency_links.txt
src/sokoenginepy.egg-info/not-zip-safe
src/sokoenginepy.egg-info/requires.txt
src/sokoenginepy.egg-info/top_level.txt
src/sokoenginepy/board/__init__.py
src/sokoenginepy/board/board_cell.py
src/sokoenginepy/board/board_state.py
src/sokoenginepy/board/hashed_board_state.py
src/sokoenginepy/board/hexoban_board.py
src/sokoenginepy/board/octoban_board.py
src/sokoenginepy/board/piece.py
src/sokoenginepy/board/sokoban_board.py
src/sokoenginepy/board/sokoban_plus.py
src/sokoenginepy/board/trioban_board.py
src/sokoenginepy/board/variant_board.py
src/sokoenginepy/board/graph/__init__.py
src/sokoenginepy/board/graph/board_graph_base.py
src/sokoenginepy/board/graph/board_graph_graphtool.py
src/sokoenginepy/board/graph/board_graph_networkx.py
src/sokoenginepy/board/graph/graph_type.py
src/sokoenginepy/game/__init__.py
src/sokoenginepy/game/mover.py
src/sokoenginepy/game/mover_commands.py
src/sokoenginepy/game/solving_mode.py
src/sokoenginepy/input_output/__init__.py
src/sokoenginepy/input_output/puzzle.py
src/sokoenginepy/input_output/puzzles_collection.py
src/sokoenginepy/input_output/sok_file_format.py
src/sokoenginepy/res/SOK_format_specification.txt
src/sokoenginepy/snapshot/__init__.py
src/sokoenginepy/snapshot/atomic_move.py
src/sokoenginepy/snapshot/snapshot.py
src/sokoenginepy/snapshot/snapshot_string_parser.py
src/sokoenginepy/tessellation/__init__.py
src/sokoenginepy/tessellation/cell_orientation.py
src/sokoenginepy/tessellation/direction.py
src/sokoenginepy/tessellation/hexoban_tessellation.py
src/sokoenginepy/tessellation/octoban_tessellation.py
src/sokoenginepy/tessellation/sokoban_tessellation.py
src/sokoenginepy/tessellation/tessellation.py
src/sokoenginepy/tessellation/tessellation_base.py
src/sokoenginepy/tessellation/trioban_tessellation.py
src/sokoenginepy/utilities/__init__.py
src/sokoenginepy/utilities/calculate_mro.py
src/sokoenginepy/utilities/coordinate_helpers.py
src/sokoenginepy/utilities/dict_helpers.py
src/sokoenginepy/utilities/docstring_inheritance.py
src/sokoenginepy/utilities/flip_dict.py
src/sokoenginepy/utilities/helpers.py
src/sokoenginepy/utilities/rle.py
src/sokoenginepy/utilities/text_utils.py
tests/__init__.py
tests/conftest.py
tests/test_helpers.py
tests/board/__init__.py
tests/board/autogenerated_board.py
tests/board/board_cell_spec.py
tests/board/board_graph_spec.py
tests/board/board_state_spec.py
tests/board/hashed_board_state_spec.py
tests/board/hexoban_board_spec.py
tests/board/octoban_board_spec.py
tests/board/sokoban_board_spec.py
tests/board/sokoban_plus_spec.py
tests/board/trioban_board_spec.py
tests/board/variant_board_spec.py
tests/fixtures/__init__.py
tests/fixtures/atomic_move_factories.py
tests/fixtures/board_cell_factories.py
tests/fixtures/board_factories.py
tests/fixtures/mover_factories.py
tests/fixtures/snapshot_factories.py
tests/fixtures/test_cases/hexoban_test_cases.ods
tests/fixtures/test_cases/octoban_test_cases.ods
tests/fixtures/test_cases/sokoban_test_cases.ods
tests/fixtures/test_cases/trioban_test_cases.ods
tests/fixtures/test_data/100_puzzles.sok
tests/fixtures/test_data/5000_puzzles.sok
tests/fixtures/test_data/500_puzzles.sok
tests/fixtures/test_data/Hexocet.sok
tests/fixtures/test_data/Hexocet5000.sok
tests/fixtures/test_data/Original_and_Extra.sok
tests/fixtures/test_data/hexoban_parser_tests.sok
tests/fixtures/test_data/mixed_collection.sok
tests/fixtures/test_data/parser_test_last_snapshot_notes.sok
tests/fixtures/test_data/parser_test_multiple_snapshots.sok
tests/fixtures/test_data/parser_test_puzzle_no_title.sok
tests/fixtures/test_data/parser_test_variant_type_not_specified.sok
tests/fixtures/test_data/parser_test_variant_type_specified_global.sok
tests/fixtures/test_data/parser_test_variant_type_specified_puzzle1.sok
tests/fixtures/test_data/parser_test_variant_type_specified_puzzle2.sok
tests/game/__init__.py
tests/game/mover_spec.py
tests/input_output/__init__.py
tests/input_output/sok_file_format_spec.py
tests/snapshot/__init__.py
tests/snapshot/atomic_move_spec.py
tests/snapshot/snapshot_spec.py
tests/snapshot/snapshot_string_parser_spec.py
tests/tessellation/__init__.py
tests/tessellation/autogenerated_tessellation.py
tests/tessellation/direction_spec.py
tests/tessellation/hexoban_tessellation_spec.py
tests/tessellation/octoban_tessellation_spec.py
tests/tessellation/sokoban_tessellation_spec.py
tests/tessellation/trioban_tessellation_spec.py
tests/utilities/__init__.py
tests/utilities/coordinate_helpers_spec.py
tests/utilities/rle_spec.py