add reopen support