Code merged from ship-simu codebase