add round-robin failover to scanner.next