added ctype functions