First commit.
bugs fixed