Adding all my work so far