added expressions and expression checking