Unambiguous function name, 7 lines of documentation, one return line split into a 4-line if-then statement, and I still have no idea why we're also checking for TypedChoiceField here.