Refactor

fix #1