graph TD
A[Raw Search Results Input] --> B[Initialize Parser]
B --> C[Parse Search Results]
C --> D{Has Valid Content?}
D -->|Yes| E[Extract Titles]
D -->|No| F[Return Empty Array]
E --> G[Extract URLs]
G --> H[Extract Snippets]
H --> I[Structure Data]
I --> J{Validation Check}
J -->|Pass| K[Format as JSON Array]
J -->|Fail| L[Error Handling]
L --> M[Clean/Fix Data]
M --> J
K --> N[Output Parsed Results]
F --> N