Complete implementation of Submerged.