fix some things, more testing. not working! :(