Just storing code as I'm changing computer, so code is not tested.