         
         var tvar = newTVar(someInt)
         let stmTest1:STM<()> = modifyTVar(tvar, fun) >>|
-                             { readTVar(tvar)}       >>-
-                             { if $0 != 16 {
-                                 return retry()
-                             } else {
-                                 return returnM()
-                             }}
-        let stmTest2 = writeTVar(tvar, 6) >>> { readTVar(tvar) }
+            { readTVar(tvar)}       >>-
+            { if $0 != 16 {
+                return retry()
+            } else {
+                return returnM()
+                }}
+        let stmTest2 = writeTVar(tvar, 6) >>| { readTVar(tvar) }
         
         
         let queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)

        
        var tvar1 = newTVar(someObj)
        let stmTest1 = writeTVar(tvar1, SimpleObject(4,7))   >>-
                     { readTVar(tvar1)                     } >>|
                     { writeTVar(tvar1, SimpleObject(6,9)) } >>-
                     { readTVar(tvar1)                     }

        let (x1, y1) = atomic(stmTest1).getXY()
        
        var tvar2 = newTVar(someObj)

        x1 = readTVarAtomic(tvar)
        
        XCTAssert(x1 == 16 && x2 == 6, "retry OK")
        
    }
}
