#342 主にhlintによるリファクタリングを行った