共通化するほどじゃなかったので個別に書いた