public DateTimeOffset ReadLastProcessedDate()
        {
            var range = $"{_sheet}!B2";

            SpreadsheetsResource.ValuesResource.GetRequest request =
                _service.Spreadsheets.Values.Get(_spreadsheetId, range);

            var response = request.Execute();
            IList <IList <object> > values = response.Values;

            if (values != null && values.Count == 1)
            {
                var            row    = values[0];
                string         result = row[0].ToString();
                DateTimeOffset dt;
                if (DateTimeOffset.TryParse(result, out dt))
                {
                    _log.Debug($"last processed date = {dt}");
                    return(dt);
                }
                else
                {
                    _log.Error($"unable to parse {result}");
                    return(DateTimeOffset.Now);
                }
            }
            _log.Error("last processed date not found");
            return(DateTime.MaxValue);
        }