done with debugging ( i hope )