Revert "Finishing coding"

This reverts commit 9e9c965b10fe1ccd93eda0889cdae39b09fc743c.
Revert "Revert "Finishing coding""

This reverts commit 55f495f1f3d6b8bffae9828103c12b7c584105e5.
Finishing code

Fixing errors...