use ValidationError's errors dict for better error handling