added a few other things by follow Seans code
May need help later with it.