Sun version plus refinements.