solves bugs and remove and add empty contructors