       delete @opts.parentTool
     @
 
-  childData: ->
+  childData: =>
     @preparedData()
 
   preparedData: =>
-    data = @_mAddFields(@_mFilter(@opts.data, @opts.filters), @opts.fields).value()
+    data = @_addFields(@_filter(@opts.data, @opts.filters), @opts.fields).value()
     @keys @_dataKeys(data[0])
     data
 

        @opts.fields = @opts.fields.concat fields 
      else
        @opts.fields = fields
        @trigger 'data', @preparedData() 
    else
      @opts.fields.push fields
    if triggerEvent
      @trigger 'add-fields', fields
      if not _.isEmpty(@opts.data) and ((not _.isEmpty(fields)) or _.isObject(fields))
        @trigger 'data', @preparedData() 
    @

  settings: (settings, triggerEvent=true) =>

      char.toUpperCase()

  # Private
  _filter: (data, filters) ->
    data = _.chain(data)
    for filter in filters
      data = data.filter(filter)
    data

  _addFields: (data, fields) ->
    for field in fields
      data = data.map (i) ->
        i[field.field] = field.func(i); i
