
    <operand> := <variable>|<number>|<hexnumber>|<unary>
    <operandcode> := <variable>|<number>|<hexnumber>|<unarycode>
    <conststring> := "ANS"|"FRACANS"|"ANSSTR"|"PI"|"E"
    <number> := (0...9) | "."
    <hexnumber> := (0...9) | (A...F) | "."
    <literal> := \"<anything>\"
    <HexPrefix> := "0x"

    <variable> = <literal>
    <variable> += <literal>
    <Rval>: "="<symbol>
    <Lval>: <symbol>"="
    
    <Op>: (<binary> ? ((<operandcode>|<constcode>) <symbol> (<operand>|<conststring>)):
                      ((<binarycode>|<unarycode>) <symbol> (<operand>|<conststring>)))
    <Num>: (<number>|<unarycode>|<binarycode>) <symbol> (<number>|<binary>|<NULL>)
    
    <HexPrefix>: (<unarycode>|<binarycode>) <symbol> <hexnumber>
    <HexNum>: (<hexnumber>|<HexPrefix>|<unarycode>|<binarycode>) <symbol> (<hexnumber>|<binary>|<NULL>)
    
    <conststring>: ((<binarycode>|<unarycode>) <symbol> (<binary>|<NULL>))
    <variable> : ((<binarycode>|<unarycode>) <symbol> (<binary>|<variable>|<NULL>))

         
