Working submarine , some fixes, experiments, I should make a new branch