     { // there is already an interested reader
       OSSpinLockUnlock(&lock)
 
-      // attach a new copy of our data to the reader's semaphore
       let context = UnsafeMutablePointer<T>(dispatch_get_context(rs))
       switch context
       {

      let context = UnsafeMutablePointer<T>(dispatch_get_context(rs))
      switch context
      {
      case nil:
        preconditionFailure(__FUNCTION__)

      default:
        context.initialize(newElement)

        let context = dispatch_get_context(threadLock)
        switch context
        {
        case &newElement:
          return true

        case nil:
          return self.put(newElement)

        default:
          preconditionFailure("Weird context value (\(context)) in waitSelect case of \(__FUNCTION__)")
        }

      default:
        // attach a new copy of our data to the reader's semaphore
        context.initialize(newElement)
        dispatch_semaphore_signal(rs)
        return true
