added mod, e, and unary negative