i really should write those tests...