how to implement it?
Umm - you just copy the attributes (ivars) from one to the other. Of course, you could create a function/method to do that (since PB classic does not support copy constructors). The most obvious place for that is in your custom transaction class uo_trans. You could do something similar with a global function.