         if let p = e.rx.extract(selection) { messages[p] += 1 }
 
       default:
-        syncprint("Bad selection: \(selection)")
+        continue // missed selection
       }
     }
 


  func testRandomBits()
  {
    let channel = Chan<Bool>.Make(0)

    let sender0 = Sender(channel)
    let sender1 = Sender(channel)

    let receiver = Receiver(channel)

    async {
      for _ in 0..<8
      {
        if let selection = select(sender0, sender1)
        {
          switch selection.id
          {
          case let s where s === sender0:
            sender0.insert(selection, newElement: false)

          case let s where s === sender1:
            sender1.insert(selection, newElement: true)

          default: break
          }
        }
      }
      sender0.close()
    }

    while let b = <-receiver
    {
      print("\(b ? 0:1)")
    }


    let channels = [a,b,c,d,e]

    let iterations = 10_000
    async {
      let senders = map(channels) { $0.tx }
      for i in 0..<iterations
