FIX: tests. still need to add more tests tho