add many fixes