Added solution and various initial code