Why not use the ~> operator here?  And can we use version 3?