removed hash stuff, going with structs