protection against 0's, etc