def recognize_shape_from_svg(input_text):
    # Step 1: Extracting Shape Properties. Parse the input text to create a list of shape properties and positions.
    shape_properties = extract_shape_properties(input_text)
    print(f"Shape properties: {shape_properties}")

    # Step 2: Identifying the Shape. Extract the specific shape from the input text and determine its type (circle, heptagon, hexagon, kite, line, octagon, pentagon, rectangle, sector, triangle, ellipse).
    shape_type = identify_shape_type(shape_properties)
    print(f"Shape type: {shape_type}")

    # Step 3: Listing Options. Extract the list of possible answers provided in the input text.
    options = extract_options(input_text)
    print(f"Options: {options}")

    # Step 4: [Free format reasoning] Derive answer with its reasons. Process the appropriate logic according to the shape type and derive the answer.
    reason, answer = derive_answer_with_explanation(shape_properties, shape_type)
    print(f"Reason: {reason}")
    print(f"Answer: {answer}")

    # Step 5: Determining the Answer. Match the result of the logical processing with the options to identify the correct answer.
    final_answer = None
    for option in options:
        if answer in option:
            final_answer = option[:3]
            break
    
    # Step 6: Returning the Final Answer. Return the matched option as the final answer to the question.
    return final_answer