メソッド長くなったので分割