make some more stuff into methods