Refactored dependencies tree and moved all processing to process