added some more functions, not sure if I will continue. getting boring