actually fix #8 and more stuff