def has_equal_part_len(state, name, unequal_msg):
d = dict(<EOL>stu_len=len(state.student_parts[name]), sol_len=len(state.solution_parts[name])<EOL>)<EOL>if d["<STR_LIT>"] != d["<STR_LIT>"]:<EOL><INDENT>_msg = state.build_message(unequal_msg, d)<EOL>state.report(Feedback(_msg, state))<EOL><DEDENT>return state<EOL>
Verify that a part that is zoomed in on has equal length.

    Typically used in the context of ``check_function_def()``

    Arguments:
        name (str): name of the part for which to check the length to the corresponding part in the solution.
        unequal_msg (str): Message in case the lengths do not match.
        state (State): state as passed by the SCT chain. Don't specify this explicitly.

    :Examples:

        Student and solution code::

            def shout(word):
                return word + '!!!'

        SCT that checks number of arguments::

            Ex().check_function_def('shout').has_equal_part_len('args', 'not enough args!')