Code created during February 19th lecture and finished later.