refactoring with new features of Dokudoki