filling in some more functions wheeee