anchor.diff:              | _ -> m := (Feed.Internal.unsafePush time evt inc, Feed.empty)
               trigger.Trigger(null, null)
                       
  -        let post mLock clock trigger expire evts evt : Async<unit> =
  -            async {
  -                let! time = Clock.now clock
  -                return lock mLock (push' time evt trigger expire evts)
  -            }
  +        let post mLock clock trigger expire evts evt =
  +            lock mLock (fun () -> let time = Clock.nowSynced clock in push' time evt trigger expire evts)
   
           let dropAll mLock (evts : Ref<Feed<'e> * Feed<'e>>) =
               async { return lock mLock (fun () -> evts := (Feed.empty, Feed.empty)) }
  
positive.code:             let mlock = new obj()
              let evtTrigger = new Event<_,_>()
              return { Post = Internal.post mlock clock evtTrigger expire evts
                       Read = Internal.read' evts
                       Clear = Internal.dropAll mlock evts
                       AwaitMail = Internal.awaitMail evtTrigger
                     }
          }        
  
      /// Post an event to a mailbox
      let post evt (mb : Mailbox<_>) = mb.Post evt
  
      /// Post an event to many mailboxes
      let postMany evt mbs = 
  
negative.code: ///The mailbox is the concept of messages passed from external parts of the system
  ///A mailbox should preferably should only have one consumer and one or more producers
  type Mailbox<'e> = 
      { Post : 'e -> unit
        Read : unit -> Feed<'e>
        Clear : Async<unit>
        AwaitMail : Async<unit>
      }
  