First commit. Fully working.