new lock:^[] new result:^Int def increment n:Int = result!(+ 1 n) def client1 (n:int) = lock?[] = ( increment!n | result?m = ( USE1(m) | lock![] | cient1!m)) def client2 (n:int) = lock?[] = ( increment!n | result?m = ( USE2(m) | lock![] | cient1!m)) run (lock![]|client1!3|client2!5)