Topicを中心にリファクタ