removed unnecessary stuff, add tests