Added code that I have insofar.