def METHOD_NAME(ctx: Context, actor: Actor) -> str:
    """
    Implements the original booklink2reply intended to change the branch
    Exits the skill if no questions remain
    """
    questions: List[str] = [] if not additional else [additional]
    used = ctx.misc.get("used_phrases", [])
    if not id(WHAT_BOOK_IMPRESSED_MOST) in used:
        questions.append(WHAT_BOOK_IMPRESSED_MOST)
    first_fav_named = id(FAVOURITE_BOOK_PHRASES[0]) in used
    if not first_fav_named:
        questions.append(FAVOURITE_BOOK_PHRASES[0])
    second_fav_named = any([id(x) in used for x in FAVOURITE_BOOK_PHRASES[1:]])
    if first_fav_named and not second_fav_named:
        questions.extend(FAVOURITE_BOOK_PHRASES[1:])
    if not ctx.misc.get("flags", {}).get("user_fav_genre_visited", False):
        questions.append(WHAT_GENRE_FAV)
    random.shuffle(questions)
    return append_unused(initial, questions, exit_on_exhaust=True)(ctx, actor)