protected static function unify_files( $params, $data = '' ) {

		$type      = $params['type'];
		$routes    = $params['routes'];
		$extension = ( 'style' == $type ) ? '.css' : '.js';
		$hash      = sha1( implode( '', $params['files'] ) );
		$min_file  = $routes['path'] . $hash . $extension;

		if ( ! is_file( $min_file ) || self::$changes ) {
			foreach ( $params['paths'] as $id => $path ) {
				if ( isset( $params['urls'][ $id ] ) ) {
					$url   = $params['urls'][ $id ];
					$path  = $routes['path'] . $params['files'][ $id ];
					$data .= self::save_external_file( $url, $path );
				}

				$data .= file_get_contents( $path );
			}

			$data = ( self::$minify ) ? self::compress_files( $data ) : $data;

			self::save_file( $min_file, $data );
		}

		self::set_processed_files();

		return self::set_new_params( $type, $hash, $routes['url'], $extension );
	}