public void PushState(ICellPosition newOrigin)
        {
            var newState = new TableNavigatorState
            {
                Origin = newOrigin,
                Cursor = newOrigin,
                CurrentLayerStartRowIndex = newOrigin.RowIndex,
            };

            states.Push(newState);
        }
        public TableNavigator(ICellPosition startPosition, ILog logger)
        {
            this.logger = logger.ForContext("ExcelObjectPrinter");
            var initialState = new TableNavigatorState
            {
                Origin = startPosition,
                Cursor = startPosition,
                CurrentLayerStartRowIndex = startPosition.RowIndex,
            };

            states = new Stack <TableNavigatorState>(new[] { initialState });
        }