   add to queue new files for recurse working
   ###
   _findRequiresAndAddToQueue : ({digest, may_have_reqire, content, real_file_name, path_name, pack_cache, waterfall_cb}) =>
-    # and add new files to queue if it have `requires`
-    if may_have_reqire is yes and @_isFilesMustBeProcessed pack_cache.requireless, path_name
-
-      composite_digest = @_getCompositeDigest pack_cache.step_cache_name, digest
-      # console.log 'composite_digest', composite_digest
-
-      # try to get all by cache
-      unless @_require_cache_.has composite_digest
-        #console.log 'Requires cache miss', real_file_name
-        [err, res] = @_findRequiresItself content
-        # just die fast
-        if err?
-          err.fileName = real_file_name
-          return waterfall_cb err
-        else 
-          @_require_cache_.set composite_digest, res
-          childrens = res
-      else
-        #console.log 'Requires cache hit', real_file_name
-        childrens = @_require_cache_.get composite_digest
-
-      for child in childrens
-
-        pack_cache.queue_obj.push
-          path_name : child
-          parent : real_file_name
-          pack_cache : pack_cache
-          , (err) ->
-            pack_cache.err = err
-
-        null
-
-    waterfall_cb()
+
+    ###
+    console.log 'path_name'
+    console.log path_name
+    console.log 'real_file_name'
+    console.log real_file_name
+
+    console.log 'pack_cache.unchanged'
+    console.log pack_cache.unchanged
+    ###
+
+    # do not add new files if hasn`t `requires`
+    return waterfall_cb() unless may_have_reqire or not @_isFilesMustBeProcessed pack_cache.requireless, path_name
+
+    composite_digest = @_getCompositeDigest pack_cache.step_cache_name, digest
+    # console.log 'composite_digest', composite_digest
+
+    # try to get all by cache
+    unless @_require_cache_.has composite_digest
+      # console.log 'Requires cache miss', real_file_name
+      [err, res] = @_findRequiresItself content
+      # just die fast
+      if err?
+        err.fileName = real_file_name
+        return waterfall_cb err
+      else 
+        @_require_cache_.set composite_digest, res
+        childrens = res
+    else
+      # console.log 'Requires cache hit', real_file_name
+      childrens = @_require_cache_.get composite_digest
+
+    #console.log 'childrens'
+    #console.log childrens
+
+    eachFn = (child, acb) =>
+      @_pathfinder_.resolveAbsolutePath child, path.dirname(real_file_name), (err, real_child_name) =>
+        return acb err if err?
+
+        # HACK @meettya inverted logic, but ok
+        if @_isFilesMustBeProcessed pack_cache.unchanged, real_child_name
+
+          pack_cache.queue_obj.push
+            path_name : child
+            parent : real_file_name
+            pack_cache : pack_cache
+            , (err) ->
+              pack_cache.err = err
+        else
+          @_dependenciesTreeSaver { path_name: child, parent : real_file_name, real_file_name : real_child_name, pack_cache}
+
+        acb()
+
+    async.each childrens, eachFn, (err) =>
+      return waterfall_cb err if err?
+      waterfall_cb()
 
   ###
   This part-method handle save to tree

        acb null, data

    async.map changed_list, map_fn, main_cb


  ###

      err : null
      filters : []
      requireless : []
      unchanged : []
      step_cache_name : step_cache_name

    # add filters
