A lot of fixes)