catch NSRangeExceptions