# File lib/guard/runner.rb, line 68
    def run_on_changes(modified, added, removed)
      ::Guard::UI.clearable
      scoped_guards do |guard|
        modified_paths = ::Guard::Watcher.match_files(guard, modified)
        added_paths    = ::Guard::Watcher.match_files(guard, added)
        removed_paths  = ::Guard::Watcher.match_files(guard, removed)

        ::Guard::UI.clear if clearable?(guard, modified_paths, added_paths, removed_paths)

        run_first_task_found(guard, MODIFICATION_TASKS, modified_paths) unless modified_paths.empty?
        run_first_task_found(guard, ADDITION_TASKS, added_paths) unless added_paths.empty?
        run_first_task_found(guard, REMOVAL_TASKS, removed_paths) unless removed_paths.empty?
      end
    end