syntax checking added; needs work