internal string Remove()
        {
            _progress.Report(new ProgressPartialResult()
            {
                Current = 0, Total = 0, Text = "Read data base"
            });

            _dbInfo          = _db.GetAll().ToList();
            _progressMaximum = _dbInfo.Count();

            int removed = 0;
            int current = 0;

            foreach (var item in _dbInfo)
            {
                current++;
                _progress.Report(new ProgressPartialResult()
                {
                    Current = current, Total = _progressMaximum, Text = item.Path
                });

                if (!System.IO.File.Exists(item.Path))
                {
                    removed++;
                    _db.Remove(item.Path);
                }
            }

            long shrinked = _db.Shrink();

            return($"Removed {removed}, shrinked {shrinked}");
        }