make semantics classes (step 1 of 2)
make semantics classes (step 2 of 2)