Many many fixes.