bunch of fixed and changes