better debug when tolerances are violated, still a bit more work to be done