added test checking and lots of stuff