Many many fixes