configurable maxAttempts