now with a spinner, and delays