AutoSuspendableScanner refactor