some changes at the class structure