<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def internal_assert(condition, message=None, item=None, extra=None):
 """Raise InternalException if condition is False. If condition is a function, execute it on DEVELOP only."""

    if DEVELOP and callable(condition):
        condition = condition()
    if not condition:
        if message is None:
            message = "assertion failed"
            if item is None:
                item = condition
        raise CoconutInternalException(message, item, extra)