Added all my work till now
FINAL