reorganized class