second commit
i did some not all the way done.