improved part classes