public static function mkdir_deep($directory, $deepDirectory = '') {
		if (!is_string($directory)) {
			throw new \InvalidArgumentException(
				'The specified directory is of type "' . gettype($directory) . '" but a string is expected.',
				1303662955
			);
		}
		if (!is_string($deepDirectory)) {
			throw new \InvalidArgumentException(
				'The specified directory is of type "' . gettype($deepDirectory) . '" but a string is expected.',
				1303662956
			);
		}

		$fullPath = $directory . $deepDirectory;
		if (!is_dir($fullPath) && strlen($fullPath) > 0) {
			$firstCreatedPath = self::createDirectoryPath($fullPath);
			if ($firstCreatedPath !== '') {
				self::fixPermissions($firstCreatedPath, TRUE);
			}
		}
	}