Done:)

Maybe I have some bugs..