add watch support