fix stuff, use switch so i can test/fix