anchor.diff:                      else Some ()
                   run ()
   
  +            member x.TryFinally(m : unit -> Option<'a>, fin : unit -> unit) =
  +                try m()
  +                finally fin()
  +
  +            member x.TryWith(m : unit -> Option<'a>, handler : exn -> Option<'a>) =
  +                try m()
  +                with e -> handler e
  +
           let option = OptionBuilder()
   
  -    
  -
  +   
   
   
       module StringBuilder =
  
positive.code:     let sopt = StateOpt.state
      let sseq = StateSeq.sseq
      
      let private test() = 
          let a = state { return 1; }
          let b = state { return 3;}
          let c = state {
                      let! a = a
                      let! b = b
  
                      return a+b
                  }
  
          printfn "%A" (c.runState 2)
  
      
  
  
negative.code: 
              c.runCont (printfn "%d")
  
      module StateOld =
          type State<'s, 'a> = { runState : 's -> 'a * 's } 
  
  
  
          type StateBuilder() =
              member x.Bind(m : State<'s, 'a>, f : 'a -> State<'s, 'b>) : State<'s, 'b> =
  