Letter ::= "a" | .. | "z" | "A" | .. | "Z" | "_". Digit ::= "0" | .. | "9". Symbol ::= "!" | "#" | "%" | "&" | "*" | "+" | "-" | "/" | ":" | "<" | "=" | ">" | "?" | "@" | "\" | "^" | "`" | "|" | "~" | "$". Character ::= legal characters TypeIde ::= Ide Ide ::= Letter {Letter | Digit}. Integer ::= {Digit}1. Real ::= {Digit}1 "." [{Digit}] [("e" | "E") ("+" | "-") {Digit}1]. Number ::= Integer | Real String ::= """ {Character} """.