changed a lot of things and made it a lot of better