abstract drain