temporary disable setInterval, refactor prepare()