Added waterField function