improved ResidueClassRing