more handling for broken data