 
 
     relop: (left, op, right) ->
-        l = @_doColumn(left)
+        l = @_doAtom(left)
         
         # MUST: replace with data driven approach
         op = op.toUpperCase()

    column: (c) ->
        atom = _.firstOrSelf(c)
        alias = _.secondOrNull(c)
        return @_doColumn(atom, alias, true)

    _doColumn: (atom, alias, addAlias = false) ->
        token = @tokenizeAtom(atom)
        model = @findColumnModel(token)
        s = @_doToken(token, model)


    orderBy: (c) -> @doList(c.orderings, @ordering, ', ', ' ORDER BY ')

    grouping: (atom) -> @_doAtom(atom)

    ordering: (o) ->
        s = @_doAtom(_.firstOrSelf(o))
        dir = if _.secondOrNull(o) == 'DESC' then 'DESC' else 'ASC'

        "#{s} #{dir}"
