trap water reimpl