waterImplementation