lots and lots of debugging