hopefully bugfixes, but still buggy for some reason:(