├── .gitattributes ├── .gitignore ├── .travis.yml ├── CMakeLists.txt ├── Irrlicht.ico ├── README.md ├── cmake ├── FindIrrlicht.cmake └── FindOpenGLES2.cmake ├── docs ├── developers.md ├── fileformat.md ├── make_install.md └── projectfileformat.txt ├── editor.conf.example ├── examples ├── default_dirt.png ├── default_stone.png ├── wool_blue.png ├── wool_green.png └── wool_red.png ├── media ├── coordinates.png ├── flip_x.png ├── flip_y.png ├── flip_z.png ├── fontlucida.png ├── gui_scale.png ├── icon.png ├── icon_mode_node.png ├── icon_mode_nodebox.png ├── icon_mode_texture.png ├── rotate_x.png ├── rotate_y.png ├── rotate_z.png ├── sky.jpg ├── texture_box.png └── texture_terrain.png ├── nodeboxeditor.desktop ├── src ├── Configuration.cpp ├── Configuration.hpp ├── Editor.cpp ├── Editor.hpp ├── EditorState.cpp ├── EditorState.hpp ├── FileFormat │ ├── CPP.cpp │ ├── CPP.hpp │ ├── FileFormat.cpp │ ├── FileFormat.hpp │ ├── Lua.cpp │ ├── Lua.hpp │ ├── NBE.cpp │ ├── NBE.hpp │ ├── helpers.cpp │ ├── helpers.hpp │ ├── obj.cpp │ └── obj.hpp ├── GUIHelpers.cpp ├── GUIHelpers.hpp ├── MenuState.cpp ├── MenuState.hpp ├── common.hpp ├── conf_cmake.hpp.in ├── dialogs │ ├── Dialog.hpp │ ├── FileDialog.cpp │ ├── FileDialog.hpp │ ├── ImageDialog.cpp │ ├── ImageDialog.hpp │ ├── TextureDialog.cpp │ └── TextureDialog.hpp ├── main.cpp ├── minetest.cpp ├── minetest.hpp ├── modes │ ├── NBEditor.cpp │ ├── NBEditor.hpp │ ├── NodeEditor.cpp │ ├── NodeEditor.hpp │ ├── TextureEditor.cpp │ └── TextureEditor.hpp ├── project │ ├── media.cpp │ ├── media.hpp │ ├── node.cpp │ ├── node.hpp │ ├── nodebox.cpp │ ├── nodebox.hpp │ ├── project.cpp │ └── project.hpp └── util │ ├── SimpleFileCombiner.cpp │ ├── SimpleFileCombiner.hpp │ ├── filesys.cpp │ ├── filesys.hpp │ ├── string.cpp │ ├── string.hpp │ ├── tinyfiledialogs.c │ └── tinyfiledialogs.h └── util ├── buildbot ├── buildwin32.sh ├── buildwin64.sh ├── toolchain_mingw.cmake └── toolchain_mingw64.cmake ├── install_nbe.sh └── travis ├── before_install.sh ├── script.sh └── toolchain_mingw.cmake.in /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/.travis.yml -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /Irrlicht.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/Irrlicht.ico -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/README.md -------------------------------------------------------------------------------- /cmake/FindIrrlicht.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/cmake/FindIrrlicht.cmake -------------------------------------------------------------------------------- /cmake/FindOpenGLES2.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/cmake/FindOpenGLES2.cmake -------------------------------------------------------------------------------- /docs/developers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/docs/developers.md -------------------------------------------------------------------------------- /docs/fileformat.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/docs/fileformat.md -------------------------------------------------------------------------------- /docs/make_install.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/docs/make_install.md -------------------------------------------------------------------------------- /docs/projectfileformat.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/docs/projectfileformat.txt -------------------------------------------------------------------------------- /editor.conf.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/editor.conf.example -------------------------------------------------------------------------------- /examples/default_dirt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/examples/default_dirt.png -------------------------------------------------------------------------------- /examples/default_stone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/examples/default_stone.png -------------------------------------------------------------------------------- /examples/wool_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/examples/wool_blue.png -------------------------------------------------------------------------------- /examples/wool_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/examples/wool_green.png -------------------------------------------------------------------------------- /examples/wool_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/examples/wool_red.png -------------------------------------------------------------------------------- /media/coordinates.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/coordinates.png -------------------------------------------------------------------------------- /media/flip_x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/flip_x.png -------------------------------------------------------------------------------- /media/flip_y.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/flip_y.png -------------------------------------------------------------------------------- /media/flip_z.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/flip_z.png -------------------------------------------------------------------------------- /media/fontlucida.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/fontlucida.png -------------------------------------------------------------------------------- /media/gui_scale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/gui_scale.png -------------------------------------------------------------------------------- /media/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/icon.png -------------------------------------------------------------------------------- /media/icon_mode_node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/icon_mode_node.png -------------------------------------------------------------------------------- /media/icon_mode_nodebox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/icon_mode_nodebox.png -------------------------------------------------------------------------------- /media/icon_mode_texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/icon_mode_texture.png -------------------------------------------------------------------------------- /media/rotate_x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/rotate_x.png -------------------------------------------------------------------------------- /media/rotate_y.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/rotate_y.png -------------------------------------------------------------------------------- /media/rotate_z.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/rotate_z.png -------------------------------------------------------------------------------- /media/sky.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/sky.jpg -------------------------------------------------------------------------------- /media/texture_box.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/texture_box.png -------------------------------------------------------------------------------- /media/texture_terrain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/media/texture_terrain.png -------------------------------------------------------------------------------- /nodeboxeditor.desktop: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/nodeboxeditor.desktop -------------------------------------------------------------------------------- /src/Configuration.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/Configuration.cpp -------------------------------------------------------------------------------- /src/Configuration.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/Configuration.hpp -------------------------------------------------------------------------------- /src/Editor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/Editor.cpp -------------------------------------------------------------------------------- /src/Editor.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/Editor.hpp -------------------------------------------------------------------------------- /src/EditorState.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/EditorState.cpp -------------------------------------------------------------------------------- /src/EditorState.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/EditorState.hpp -------------------------------------------------------------------------------- /src/FileFormat/CPP.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/CPP.cpp -------------------------------------------------------------------------------- /src/FileFormat/CPP.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/CPP.hpp -------------------------------------------------------------------------------- /src/FileFormat/FileFormat.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/FileFormat.cpp -------------------------------------------------------------------------------- /src/FileFormat/FileFormat.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/FileFormat.hpp -------------------------------------------------------------------------------- /src/FileFormat/Lua.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/Lua.cpp -------------------------------------------------------------------------------- /src/FileFormat/Lua.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/Lua.hpp -------------------------------------------------------------------------------- /src/FileFormat/NBE.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/NBE.cpp -------------------------------------------------------------------------------- /src/FileFormat/NBE.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/NBE.hpp -------------------------------------------------------------------------------- /src/FileFormat/helpers.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/helpers.cpp -------------------------------------------------------------------------------- /src/FileFormat/helpers.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/helpers.hpp -------------------------------------------------------------------------------- /src/FileFormat/obj.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/obj.cpp -------------------------------------------------------------------------------- /src/FileFormat/obj.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/FileFormat/obj.hpp -------------------------------------------------------------------------------- /src/GUIHelpers.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/GUIHelpers.cpp -------------------------------------------------------------------------------- /src/GUIHelpers.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/GUIHelpers.hpp -------------------------------------------------------------------------------- /src/MenuState.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/MenuState.cpp -------------------------------------------------------------------------------- /src/MenuState.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/MenuState.hpp -------------------------------------------------------------------------------- /src/common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/common.hpp -------------------------------------------------------------------------------- /src/conf_cmake.hpp.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/conf_cmake.hpp.in -------------------------------------------------------------------------------- /src/dialogs/Dialog.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/Dialog.hpp -------------------------------------------------------------------------------- /src/dialogs/FileDialog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/FileDialog.cpp -------------------------------------------------------------------------------- /src/dialogs/FileDialog.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/FileDialog.hpp -------------------------------------------------------------------------------- /src/dialogs/ImageDialog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/ImageDialog.cpp -------------------------------------------------------------------------------- /src/dialogs/ImageDialog.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/ImageDialog.hpp -------------------------------------------------------------------------------- /src/dialogs/TextureDialog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/TextureDialog.cpp -------------------------------------------------------------------------------- /src/dialogs/TextureDialog.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/dialogs/TextureDialog.hpp -------------------------------------------------------------------------------- /src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/main.cpp -------------------------------------------------------------------------------- /src/minetest.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/minetest.cpp -------------------------------------------------------------------------------- /src/minetest.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/minetest.hpp -------------------------------------------------------------------------------- /src/modes/NBEditor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/NBEditor.cpp -------------------------------------------------------------------------------- /src/modes/NBEditor.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/NBEditor.hpp -------------------------------------------------------------------------------- /src/modes/NodeEditor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/NodeEditor.cpp -------------------------------------------------------------------------------- /src/modes/NodeEditor.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/NodeEditor.hpp -------------------------------------------------------------------------------- /src/modes/TextureEditor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/TextureEditor.cpp -------------------------------------------------------------------------------- /src/modes/TextureEditor.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/modes/TextureEditor.hpp -------------------------------------------------------------------------------- /src/project/media.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/media.cpp -------------------------------------------------------------------------------- /src/project/media.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/media.hpp -------------------------------------------------------------------------------- /src/project/node.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/node.cpp -------------------------------------------------------------------------------- /src/project/node.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/node.hpp -------------------------------------------------------------------------------- /src/project/nodebox.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/nodebox.cpp -------------------------------------------------------------------------------- /src/project/nodebox.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/nodebox.hpp -------------------------------------------------------------------------------- /src/project/project.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/project.cpp -------------------------------------------------------------------------------- /src/project/project.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/project/project.hpp -------------------------------------------------------------------------------- /src/util/SimpleFileCombiner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/SimpleFileCombiner.cpp -------------------------------------------------------------------------------- /src/util/SimpleFileCombiner.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/SimpleFileCombiner.hpp -------------------------------------------------------------------------------- /src/util/filesys.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/filesys.cpp -------------------------------------------------------------------------------- /src/util/filesys.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/filesys.hpp -------------------------------------------------------------------------------- /src/util/string.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/string.cpp -------------------------------------------------------------------------------- /src/util/string.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/string.hpp -------------------------------------------------------------------------------- /src/util/tinyfiledialogs.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/tinyfiledialogs.c -------------------------------------------------------------------------------- /src/util/tinyfiledialogs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/src/util/tinyfiledialogs.h -------------------------------------------------------------------------------- /util/buildbot/buildwin32.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/buildbot/buildwin32.sh -------------------------------------------------------------------------------- /util/buildbot/buildwin64.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/buildbot/buildwin64.sh -------------------------------------------------------------------------------- /util/buildbot/toolchain_mingw.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/buildbot/toolchain_mingw.cmake -------------------------------------------------------------------------------- /util/buildbot/toolchain_mingw64.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/buildbot/toolchain_mingw64.cmake -------------------------------------------------------------------------------- /util/install_nbe.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/install_nbe.sh -------------------------------------------------------------------------------- /util/travis/before_install.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/travis/before_install.sh -------------------------------------------------------------------------------- /util/travis/script.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/travis/script.sh -------------------------------------------------------------------------------- /util/travis/toolchain_mingw.cmake.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rubenwardy/NodeBoxEditor/HEAD/util/travis/toolchain_mingw.cmake.in --------------------------------------------------------------------------------