select на чтение и запись одного канала ёмкостью 1

Что выведетMiddleпроверка — Спринт07-t006

В каждой итерации select пытается и прочитать, и записать в один и тот же буферизованный канал ёмкостью 1. Что выведет программа?

main.gogo
1package main2 3import "fmt"4 5func main() {6	slot := make(chan int, 1)7	slot <- 28	for n := 0; n < 8; n++ {9		select {10		case x := <-slot:11			fmt.Println(x)12		case slot <- n:13		}14	}15}
Чем закончится программа?
Сначала подумай без запуска — на собесе компилятора не будет.