cleaned up + tested briefly