Adding all the stuff that makes it work.