Should be working now, still need to create more tests