updated some classes and methods