task6からコピー
semantic checker途中