soo many fixes