def METHOD_NAME(signal):
    """
    Prepare a Session to be answered by the original reporter.
    """
    if signal.status.state != workflow.REACTIE_GEVRAAGD:
        msg = f'Signal {signal.id} is not in state REACTIE_GEVRAAGD!'
        raise WrongState(msg)
    with transaction.atomic():
        question = Question.objects.create(
            required=True,
            field_type='plain_text',
            short_label='Onze vraag aan u',
            label=signal.status.text,  # <-- this should not be empty, max 400 characters
            analysis_key='reaction',
        )
        graph = QuestionGraph.objects.create(first_question=question, name='Reactie gevraagd.')
        questionnaire = Questionnaire.objects.create(
            is_active=True,
            graph=graph,
            name='Reactie gevraagd',
            flow=Questionnaire.REACTION_REQUEST,
        )
        session = Session.objects.create(
            submit_before=now() + timedelta(days=REACTION_REQUEST_DAYS_OPEN),
            questionnaire=questionnaire,
            _signal=signal,
        )
    return session