pass basic 1
basic 2 first half