private async Task <Dictionary <string, string> > ReadFromZip(IProjectSettings project)
        {
            if (!project.ArchiveFile.Exists)
            {
                throw new FileNotFoundException(project.ArchiveFile.FullName);
            }

            var fileReader = new FileService();
            var rawBytes   = await fileReader.ReadAllBytesAsync(project.ArchiveFile.FullName);

            _logger.LogInfo($"Read {rawBytes.Length} bytes from archive.");

            var unzippedStocks = await _unzipper.UnzipAsync(rawBytes, CancellationToken.None);

            _logger.LogInfo($"Unzipped {unzippedStocks.Count} stocks from {project.ArchiveFileName}");

            await SaveUnzippedFiles(project, unzippedStocks);

            return(unzippedStocks);
        }