beginning of SOLID modifcations