added null checks for incoming submissions based on type since viewmodel require attribute does not seem to do its job