logic errors are hard