left out some important stuff...oops