Added validation
Math functions need to be implemented