Partially fix my crap implementation