Done. Nits welcomed :)