spec2: 仕様2の実装