長いので、少しずつ書いていきます