refactor demo start