make open/close() to return this