Analyze the provided Figma screenshot of a webpage section and generate a structured schema.

## INPUT ANALYSIS GUIDELINES
1. Carefully examine the screenshot to identify all distinct elements
2. Identify the hierarchical structure of the section
3. Classify each element according to its type and purpose
4. Determine whether elements repeat in a pattern (blocks). If repeating mention only once
5. Note any interactive elements that may need toggle controls. These include section headings, subheadings and any time of media.

## ELEMENT CLASSIFICATION RULES
- **Element Types** (must be one of these 9 types only):
  - outer_container: The main wrapper for the entire section (always required, exactly one per section)
  - container: distinctively styled wrapper with specific visual properties (background color or border only) that makes it stand out from regular content
  - tag_container: Container with specific styling properties (background, border, shape) - use ONLY when needed
  - text: Any textual content
  - button: Interactive button elements
  - icon: Small visual elements like icons, symbols, separators
  - image: Photos, illustrations, logos
  - video: Video content or placeholders
  - star: Rating displays (treat 5 stars as a single element)
- **Blocks**: 
  - Indicates how many times an element repeats
  - For repeating elements (like cards in a carousel), use the count of repetition
  - repeating elements are not the exact same elements, they are elements belonging to the same category such as logos , product_features etc. 
  - put repeating elements only once
## IMPORTANT CONSIDERATIONS
1. **Tag Containers**: Only include tag_containers when an element needs specific styling like background color, borders, or special shapes. Don't add unnecessary tag containers. 1 tag container can have at most 1 element so use it very scarcely, wherever there is a need for a container use the container element type. Every tag text must have a tag container and vice versa. Examples of tags are before_tag, after_tag, sale_tag etc.
2. **Icons** - They are all symbols, No image no matter how small can be part of an icon. These images are separate elements of the type image.
3. **Blocks vs Individual Elements**: When a pattern repeats (like product cards), count them as blocks rather than creating separate elements for each instance. Mention all the elements once but mention the block_type. 
4. Blocks are only sets of those elements which are repeating. No non repeating element should be a part of a block , and the repeating elements should be mentioned only once.
5. **Element IDs**: Use descriptive snake_case naming that indicates purpose (e.g., product_image, section_heading, review_text)
6. **Toggle Controls**: Identify elements that should have visibility controls. There HAS to be a control field value for each control field id. in the case of tags , show_tag control will be present for both the text and the container. In case there is media in a section on a side which can be toggled between left and right, create a container for that media, that container will have a toggle called show_image_or_video_left which toggles the media to be on the left or right, the values for this toggle would be yes or no , yes when on the left and no when on the right. There is no show_image_or_video_right. show_image_or_video decides which type of media is present, is applied over the media element id and can have values image or video.
7. **Image** - An image may also contain text, ignore that text, do not create elements for that text. Only toggle that an image can have is show_image_or_video , this toggle only exists for images which are big enough to take a considerable portion of the screenshot.
8. **Container** - A container has to have a bounding box or a differing background colour, which sets the elements inside it apart from the rest of the elements on the screen. The container may or may not be an interactive element.
9. **Text** - Each text which visually looks different in terms of colour, size etc is a different text element . create a different text entry for every such text element.
10. **button** - Buttons only have some sort of call to action text , if the element does not have a call to action text then it is not a button.
11. **Non visible elements** - There can be certain elements which although not visible, have to be part of the schema as dummy elements . These elements are : 
  a) whenever there is a choice of selection such as show_image_or_video, with one selected value, create a dummy element of the opposite choice as well
  b) When an expandable icon is present-  create an extra text element.
12. **Logos** - Any sort of logos are always images.


{optional_context}

