reconstruct jgroups code