 
         initialize: (args) =>
             @parent = args.parent
+            @query_result = args.query_result
+            if @query_events?
+                for own event, handler of @query_events()
+                    @query_result.on event, handler
 
         current_result: []
         max_datum_threshold: 1000
 
         # Return whether there are too many datums
         # If there are too many, we will disable syntax highlighting to avoid freezing the page
-        has_too_many_datums: (result) ->
+        has_too_many_datums: (result) -> # ATN
             if @has_too_many_datums_helper(result) > @max_datum_threshold
                 return true
             return false

            @current_query = options.current_query
            @raw_query = options.raw_query
            @driver_handler = options.driver_handler
            if options.events?
                for own event, handler of options.events
                    @on event, handler

                    @start_index = 0
                    @value = value
                    @ended = true
                @ready = true
                @trigger 'ready', @

        # Remove n elements from the result set of a cursor Waits for
        # n+1 elements, or the end before returning
