A general comment on the generated wrapping UDFs: If you create the PactRecord in open, you save the cost of serializing it into the object that is shipped to and through the cluster.