wooooo separate main and test for probably everything