Added a lot of corrections