Rewrote JIOP to support generics