semantics assignment 2