too slow, gonna try to get rid of hashmaps