add learn goroutines
add learn test