Changes based on 三廻部さん &  佐伯さん's revision