anchor.diff:  
                ctrl.Header.Text <- Stream.Var.get item.Header
                Stream.ofObservableOnMain ctrl.Header.MouseDoubleClick
  -             |> Stream.iterJob (fun _ -> onMain {
  +             |> Stream.subscribeJob (fun _ -> onMain {
                   ctrl.Header.Focusable <- true
                   if ctrl.Header.Focus () then
                     ctrl.Header.SelectAll () })
  -             |> queue
                Stream.ofObservableOnMain ctrl.Header.KeyUp
                |> Stream.filterFun (fun e -> e.Key = Key.Enter)
                |> Stream.mapConst ()
                |> Stream.merge (Stream.ofObservableOnMain ctrl.LostFocus
                                 |> Stream.mapConst ())
  -             |> Stream.iterJob (fun () -> onMain {
  +             |> Stream.subscribeJob (fun _ -> onMain {
                   match ctrl.Header.Text.Trim () with
                    | "" ->
                      ctrl.Header.Text <- Stream.Var.get item.Header
  
positive.code:                    ctrl.Header.Text <- text
                     ctrl.Header.Focusable <- false
                     return! Stream.Var.set item.Header text })
               |> queue
  
               Stream.ofObservableOnMain ctrl.IsCompleted.Click
               |> Stream.iterJob (fun _ -> onMain {
                  let isChecked = ctrl.IsCompleted.IsChecked.Value
                  if isChecked <> Stream.Var.get item.IsCompleted then
                    Stream.Var.set item.IsCompleted isChecked |> start })
               |> queue
               Stream.Var.tap item.IsCompleted
               |> Stream.iterJob (fun _ -> onMain {
                  let isCompleted = Stream.Var.get item.IsCompleted
                  if ctrl.IsCompleted.IsChecked.Value <> isCompleted then
                    ctrl.IsCompleted.IsChecked <- Nullable<bool> isCompleted })
               |> queue
  
               Stream.Var.tap item.IsCompleted
               |> Stream.iterJob (fun isCompleted -> onMain {
                  ctrl.Header.FontStyle <-
                    if isCompleted then FontStyles.Italic else FontStyles.Normal })
               |> queue
  
               Stream.ofObservableOnMain ctrl.MouseEnter
               |> Stream.iterJob (fun _ -> onMain {
                  ctrl.Remove.Visibility <- Visibility.Visible })
               |> queue
               Stream.ofObservableOnMain ctrl.MouseLeave
               |> Stream.iterJob (fun _ -> onMain {
                  ctrl.Remove.Visibility <- Visibility.Hidden })
               |> queue
  
               Stream.ofObservableOnMain ctrl.Remove.Click
               |> Stream.iterJob (fun _ -> 
                  Stream.Var.get itemsVar
                  |> List.filter (fun item' -> item' <> item)
                  |> Stream.Var.set itemsVar)
               |> queue
  
               ctrl
  
  
negative.code: 
        let changedCompleted =
          items
          |> Stream.switchMap (fun items ->
             Stream.ofSeq items
             |> Stream.mergeMap (fun i -> Stream.Var.tap i.IsCompleted)
             |> Stream.mapConst items)
          |> Stream.merge items
  
        let itemsAndCtrls =
          items
  