{"id":"hG02kE8ov3Igko0G","meta":{"instanceId":"6fcb279fd6b00187153abdc6d8b627acfd9fe31f84b387f64b56a0996e8ea182"},"name":"Transform articles into children's audiobooks and comics via Telegram & BrowserAct","tags":[],"nodes":[{"id":"c5d63d20-00cd-4d6e-97bb-7ebc25d415e5","name":"Structured Output Parser","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[992,320],"parameters":{"autoFix":true,"jsonSchemaExample":"{\"Type\": \"Article_Request\", \"Link\": \"extracted_link\"}"},"typeVersion":1.3},{"id":"a7e7eb79-e4a2-49e7-9c18-4a13bcf467ec","name":"Validate user Input","type":"@n8n/n8n-nodes-langchain.agent","position":[864,128],"parameters":{"text":"={{ $json.message.text }}","options":{"systemMessage":"You are an input classification engine. Your sole purpose is to analyze user text and output a JSON object based on specific criteria. Do not generate conversational text; only output the raw JSON.\n\nRules for Classification (evaluated in order of priority):\n\n1. ARTICLE & LINK PROCESSING (Priority 1):\n   If the user asks to generate, summarize, or read an article or story, blog post, or specific content (e.g., \"Summarize this page,\" \"Write an article based on this link,\" \"Analyze this\").\n   - CRITICAL CHECK: Does the input contain a valid URL or web link?\n     - IF YES (Link is present):\n       - Set \"Type\" to \"Article_Request\".\n       - Extract the URL as \"Link\".\n       - Output format: {\"Type\": \"Article_Request\", \"Link\": \"extracted_link\"}\n     \n     - IF NO (Link is missing):\n       - Treat this strictly as \"NoData\".\n       - Output format: {\"Type\": \"NoData\", \"Link\": \"Null\"}\n\n2. REGULAR CHAT (Priority 2):\n   If the user input is a greeting, small talk, or general conversational filler (e.g., \"Hello,\" \"How are you?\", \"Tell me a joke\") without asking for link processing.\n   - Output format: {\"Type\": \"Chat\", \"Link\": \"Null\"}\n\n3. INSUFFICIENT DATA (Priority 3):\n   If the user input is gibberish, vague, or if it matched the \"Article\" intent but lacked a link (as per Rule 1).\n   - Output format: {\"Type\": \"NoData\", \"Link\": \"Null\"}\n\nOutput Constraint:\nReturn ONLY the raw JSON object. Do not wrap it in markdown code blocks. Do not add explanations.\n"},"promptType":"define","hasOutputParser":true},"typeVersion":3},{"id":"96347691-1097-464e-81a1-3618b3ddf5ea","name":"OpenRouter","type":"@n8n/n8n-nodes-langchain.lmChatOpenRouter","position":[1712,272],"parameters":{"model":"google/gemini-3-pro-preview","options":{}},"credentials":{"openRouterApi":{"id":"x6ohV3n8b2Kjebtm","name":"OpenRouter account"}},"typeVersion":1},{"id":"a4aad5c4-a735-4fef-a941-cdda8d377977","name":"Google Gemini","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[864,320],"parameters":{"options":{}},"credentials":{"googlePalmApi":{"id":"9pXYiybR74j5zn4d","name":"Google Gemini(PaLM) Api account"}},"typeVersion":1},{"id":"d29b8b5a-4386-4c9a-9f57-553df23d1e33","name":"Loop Over Items","type":"n8n-nodes-base.splitInBatches","position":[2640,192],"parameters":{"options":{}},"typeVersion":3},{"id":"e9abfc6c-cc50-4304-b546-966269b8646e","name":"Google Gemini1","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[1632,848],"parameters":{"options":{}},"credentials":{"googlePalmApi":{"id":"9pXYiybR74j5zn4d","name":"Google Gemini(PaLM) Api account"}},"typeVersion":1},{"id":"03da1c2e-b787-42cd-9a98-f5cb0c347fb4","name":"Structured Output","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[1840,272],"parameters":{"autoFix":true,"jsonSchemaExample":"{\n  \"comic_book_prompts\": [\n    \"String containing optimized prompt for Page 1\",\n    \"String containing optimized prompt for Page 2\",\n    \"String containing optimized prompt for Page 3\"\n  ],\n  \"full_story_text\": \"The complete, long-form, engaging story text...\",\n  \"telegram_caption\": \"HTML formatted string...\",\n  \"audio_filename\": \"story_name.mp3\"\n}"},"typeVersion":1.3},{"id":"82082110-5d75-414a-866f-13f759c47073","name":"Avoid Rate Limits","type":"n8n-nodes-base.wait","position":[3232,208],"webhookId":"4c4b60ea-c669-4f7b-9540-6a1b301055c1","parameters":{},"typeVersion":1.1},{"id":"5216edbc-81e5-47cd-afa3-6bf0ab10f63c","name":"User Sends Message to Bot","type":"n8n-nodes-base.telegramTrigger","position":[672,128],"webhookId":"a98e8455-ba5a-447e-b928-733483d34db4","parameters":{"updates":["message"],"additionalFields":{}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"typeVersion":1.2},{"id":"c1597886-abb5-46b6-a272-29d012bebee1","name":"Check For Input Type","type":"n8n-nodes-base.switch","position":[1168,112],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"9e003f66-d011-459a-a313-b603c0e14551","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.Type }}","rightValue":"Article_Request"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"2ebb24ec-bd32-4e96-a022-93d066fda17f","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.output.Type }}","rightValue":"Chat"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"24d355dd-efec-4946-96fe-3d82f3ee4d71","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.output.Type }}","rightValue":"NoData"}]}}]},"options":{}},"typeVersion":3.4},{"id":"272c1f2d-e32f-43a7-a1dd-c470ac7bf446","name":"Get Story via BrowserAct","type":"n8n-nodes-browseract.browserAct","position":[1536,96],"parameters":{"type":"WORKFLOW","timeout":7200,"workflowId":"69908776368243698","workflowConfig":{"value":{"input-Target_link":"={{ $json.output.Link }}"},"schema":[{"id":"input-Target_link","type":"string","display":true,"removed":false,"required":false,"description":"If left blank, the default value defined in BrowserAct will be used.","displayName":"Target_link","defaultMatch":true}],"mappingMode":"defineBelow","matchingColumns":["input-Target_link"],"attemptToConvertTypes":false,"convertFieldsToString":false},"open_incognito_mode":false},"credentials":{"browserActApi":{"id":"G1U5ih38TKU5wcI5","name":"BrowserAct account"}},"typeVersion":1},{"id":"7114a72a-d166-4072-bef8-fd6ca5aa0089","name":"Summarize the Story","type":"@n8n/n8n-nodes-langchain.agent","position":[1712,96],"parameters":{"text":"=Article or Story Data :  {{ $json.output.string }}","options":{"systemMessage":"You are an advanced Narrative Architect and Visual Director AI. Your purpose is to ingest raw, messy JSON data containing story fragments, purify the narrative, and output a pristine, structured JSON object containing a full-length children's story, high-fidelity comic book image prompts, and social media metadata.\n\nI. Input Processing & Data Cleaning Protocols:\n\nDeduplication: Scan the input array. If multiple objects contain the same text (e.g., a title and a header are identical), retain only the most contextually relevant one and discard the duplicate.\n\nNoise Filtration (Strict): Analyze the semantic content of every paragraph and body_text.\n\nKeep: Narrative elements, dialogue, character descriptions, and setting details.\n\nDiscard: System commands (e.g., \"Skip duplicate data\"), navigational text (e.g., \"More stories\"), advertisements, unrelated facts, or any text that does not logically fit the continuity of the main story.\n\nNarrative Stitching: Assemble the remaining valid text chunks into a single, coherent chronological timeline.\n\nII. Content Generation Tasks:\n\n1. \"Nano Banana Pro\" Comic Book Image Prompts:\n\nObjective: Create visual descriptions that will generate high-quality comic book pages using the \"Nano Banana Pro\" model.\n\nQuantity: Generate 1 to 3 prompts total.\n\nShort Story: 1 Image.\n\nMedium Story: 2 Images.\n\nLong Story: 3 Images.\n\nComposition: Each prompt must describe a single image containing 4 to 6 distinct panels.\n\nStyle: Do not limit to Manga. Use \"Western Comic Book Style\" or \"Graphic Novel Style.\"\n\nStructure:\n\nHeader: Start with style keywords optimized for Nano Banana Pro (e.g., masterpiece, best quality, comic book page layout, vibrant colors, detailed ink lines, clear panel borders).\n\nPanel Breakdown: Number every scene clearly (e.g., \"Panel 1:\", \"Panel 2:\").\n\nDetails: Include descriptions of characters, action, emotion, background settings, and lighting for every panel.\n\nVisual Logic:\n\nImage 1: Visualizes the Beginning/Setup.\n\nImage 2: Visualizes the Middle/Conflict.\n\nImage 3: Visualizes the End/Resolution.\n\n2. Story Retelling (For Kids):\n\nLength: Do NOT summarize. You must rewrite the full story. It should be long, detailed, and immersive.\n\nTone: Engaging, whimsical, and warm. Suitable for children aged 4–9.\n\nTechnique:\n\nRetain specific details (names, colors, objects).\n\nKeep the dialogue.\n\nSmooth out the transitions between the stitched input paragraphs.\n\nEnsure the moral/lesson is clear but woven naturally into the ending.\n\n3. Telegram Caption:\n\nFormat: HTML compatible.\n\nStructure:\n\nTitle: Bolded (<b>Title</b>).\n\nHook: A short, emoji-rich intro sentence.\n\nEducational Context: Extract the text labeled \"Discussion Starter\" or similar from the input. Format this nicely using italics (<i>).\n\nConstraint: Ensure it fits within Telegram API character limits (approx. 1024 chars), but maximizes value.\n\n4. Audio Filename:\n\nFormat: Convert the story title into a clean snake_case string ending in .mp3 (e.g., the_ugly_duckling_story.mp3).\n\nIII. Output Format: You must output strictly valid JSON. Do not wrap the JSON in markdown code blocks (```). Do not include conversational text before or after the JSON.\n\nJSON Schema:\n\n{\n  \"comic_book_prompts\": [\n    \"String containing optimized prompt for Page 1\",\n    \"String containing optimized prompt for Page 2\",\n    \"String containing optimized prompt for Page 3\"\n  ],\n  \"full_story_text\": \"The complete, long-form, engaging story text...\",\n  \"telegram_caption\": \"HTML formatted string...\",\n  \"audio_filename\": \"story_name.mp3\"\n}\nExample Simulation (How the AI calculates the output):\nIf Input contains:\n\n\"Skip data\", \"Snow White\", \"Once there was a queen...\", \"Buy insurance now\", \"She ate a apple\", \"Discussion: Ask about strangers.\"\n\nThe AI Logic:\n\nFilter: Deletes \"Skip data\" and \"Buy insurance now\".\n\nStitch: Connects \"Once there was a queen...\" with \"She ate a apple\".\n\nPrompt Gen: Creates a comic page prompt with: \"Panel 1: Queen sewing. Panel 2: Magic Mirror. Panel 3: Snow White eating apple.\" Adds tags: comic book style, cel shaded, 8k, highly detailed.\n\nStory Gen: Expands the text into a full narrative with dialogue.\n\nCaption: Formats the title and discussion question in HTML.\n\nFinal JSON Output Example:\n\n{\n  \"comic_book_prompts\": [\n    \"masterpiece, best quality, comic book page layout, western graphic novel style, vibrant colors, detailed ink lines, 5 panels. Panel 1: A close up of the Wicked Queen holding a poisoned red apple, grinning evilly. Panel 2: Snow White in the forest surrounded by cute animals like deer and birds. Panel 3: An old hag handing the apple to Snow White over a cottage windowsill. Panel 4: Snow White taking a bite, eyes widening. Panel 5: The Seven Dwarfs crying around a glass coffin. Cinematic lighting, expressive faces, high resolution.\"\n  ],\n  \"full_story_text\": \"Once upon a time, in the middle of winter, a Queen sat sewing at a window... [Full long story continues]...\",\n  \"telegram_caption\": \"<b>🍎 Snow White and the Seven Dwarfs</b>\\n\\nA classic tale of jealousy, friendship, and magic! ✨\\n\\n<b>🗣 Discussion Starter:</b>\\n<i>Ask your child: Why is it important to be careful with strangers?</i>\\n\\n🎧 <b>Listen to the story below!</b>\",\n  \"audio_filename\": \"snow_white_story.mp3\"\n}"},"promptType":"define","hasOutputParser":true},"typeVersion":3},{"id":"9c8efa37-f7f4-4cf4-a87d-205a56342195","name":"Chatting With User","type":"@n8n/n8n-nodes-langchain.agent","position":[1632,672],"parameters":{"text":"=Input type : {{ $json.output.Type }} | User Input : {{ $('User Sends Message to Bot').item.json.message.text }}","options":{"systemMessage":"if the input type is \"Nodata\" ask the user to provide the Link to the article or story.\n\nif the input type is chat, analyze the user input and generate single response\n\nsend the result out as a raw text.\navoid using any tags or notations like ```text ```"},"promptType":"define"},"typeVersion":3},{"id":"24df2346-c25d-44ba-8221-34797b5f5ab0","name":"Answer the User","type":"n8n-nodes-base.telegram","position":[2000,672],"webhookId":"23e1fb3a-33d8-40fa-aa49-08b320348b0a","parameters":{"text":"={{ $json.output }}","chatId":"=parameters.chatId=={{ $('User Sends Message to Bot').item.json.message.chat.id }} (Use Channel ID or Chat ID from the Telegram Trigger node)","additionalFields":{"parse_mode":"HTML","appendAttribution":false}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"typeVersion":1.2},{"id":"9c2bd586-eef6-46fd-a066-08760b644ca1","name":"Send an audio file To User","type":"n8n-nodes-base.telegram","position":[2624,-48],"webhookId":"fbfa4f03-8af7-498f-8e34-613ac3534694","parameters":{"chatId":"\"Your Telegram Channel ID\"","operation":"sendAudio","binaryData":true,"additionalFields":{"caption":"={{ $('Summarize the Story').first().json.output.telegram_caption }}","fileName":"={{ $('Summarize the Story').first().json.output.audio_filename }}","parse_mode":"HTML"}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"typeVersion":1.2},{"id":"ed3fa5f8-d7f7-4a12-8e51-5d8ba76fedf6","name":"Send Story Comic Images","type":"n8n-nodes-base.telegram","position":[3040,208],"webhookId":"d63fd190-450d-4b11-b814-9a459d58e02e","parameters":{"chatId":"\"Your Telegram Channel ID\"","operation":"sendPhoto","binaryData":true,"additionalFields":{}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"typeVersion":1.2},{"id":"dd074fb8-c459-4fa9-ae2c-7be1d71453da","name":"Split Image Prompts","type":"n8n-nodes-base.splitOut","position":[2416,192],"parameters":{"options":{},"fieldToSplitOut":"output.comic_book_prompts"},"typeVersion":1},{"id":"43df4da8-8068-45ec-9acd-ca6ea09a415e","name":"Process Initialization Alert","type":"n8n-nodes-base.telegram","position":[1536,-80],"webhookId":"23e1fb3a-33d8-40fa-aa49-08b320348b0a","parameters":{"text":"=Ok, I will do it please give me a moment.","chatId":"=parameters.chatId=={{ $('User Sends Message to Bot').item.json.message.chat.id }} (Use Channel ID or Chat ID from the Telegram Trigger node)","additionalFields":{"parse_mode":"HTML","appendAttribution":false}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"typeVersion":1.2},{"id":"60d55a01-aab5-4442-81c8-430c3cb9c27f","name":"Generate Story Audio","type":"@elevenlabs/n8n-nodes-elevenlabs.elevenLabs","position":[2416,-48],"parameters":{"text":"={{ $json.output.full_story_text }}","voice":{"__rl":true,"mode":"list","value":"TX3LPaxmHKxFdv7VOQHJ","cachedResultName":"Liam - Energetic, Social Media Creator"},"resource":"speech","requestOptions":{},"additionalOptions":{"model":{"__rl":true,"mode":"list","value":"eleven_flash_v2_5","cachedResultName":"Eleven Flash v2.5"},"languageCode":"en"}},"credentials":{"elevenLabsApi":{"id":"k2m661eQ2onev4dx","name":"ElevenLabs account"}},"typeVersion":1},{"id":"c598ca21-5791-4c9f-9789-4cfead85775d","name":"Workflow Completion Notification","type":"n8n-nodes-base.telegram","position":[2848,48],"webhookId":"23e1fb3a-33d8-40fa-aa49-08b320348b0a","parameters":{"text":"=Story Generation Complete.","chatId":"=parameters.chatId=={{ $('User Sends Message to Bot').item.json.message.chat.id }} (Use Channel ID or Chat ID from the Telegram Trigger node)","additionalFields":{"parse_mode":"HTML","appendAttribution":false}},"credentials":{"telegramApi":{"id":"gJnGTVzNOeiM3LHZ","name":"Telegram account"}},"executeOnce":true,"typeVersion":1.2},{"id":"84b70ee7-2f73-47d1-9b12-933f746ef611","name":"Generate Strory image","type":"@n8n/n8n-nodes-langchain.googleGemini","position":[2848,208],"parameters":{"prompt":"={{ $json[\"output.comic_book_prompts\"] }}","modelId":{"__rl":true,"mode":"list","value":"models/gemini-3-pro-image-preview","cachedResultName":"models/gemini-3-pro-image-preview (Nano Banana Pro)"},"options":{"sampleCount":1,"binaryPropertyOutput":"data"},"resource":"image"},"credentials":{"googlePalmApi":{"id":"9pXYiybR74j5zn4d","name":"Google Gemini(PaLM) Api account"}},"typeVersion":1},{"id":"3ed62773-82cc-465f-a465-730b98d8415a","name":"Documentation","type":"n8n-nodes-base.stickyNote","position":[256,-192],"parameters":{"width":380,"height":520,"content":"## ⚡ Workflow Overview & Setup\n\n**Summary:** This specialized automation converts online articles into immersive children's audiobooks and multi-panel comic book images, delivering the final educational content directly via Telegram.\n\n### Requirements\n* **Credentials:** Telegram, BrowserAct, OpenRouter, ElevenLabs, Google Gemini (PaLM).\n* **Mandatory:** BrowserAct API (Template: **Children’s Book Storytelling & Illustration**)\n\n### How to Use\n1.  **Credentials:** Ensure all service accounts are connected in the n8n credentials manager.\n2.  **BrowserAct Template:** Ensure you have the **Children’s Book Storytelling & Illustration** template saved in your BrowserAct account.\n3.  **Interaction:** Send a URL to your Telegram bot. The AI will classify the request, scrape the content, and begin the creative transformation.\n\n### Need Help?\n[How to Find Your BrowserAct API Key & Workflow ID](https://docs.browseract.com)\n[How to Connect n8n to BrowserAct](https://docs.browseract.com)\n[How to Use & Customize BrowserAct Templates](https://docs.browseract.com)"},"typeVersion":1},{"id":"f86945fc-4e0a-4118-8176-8d173a49bec0","name":"Step 1 Explanation","type":"n8n-nodes-base.stickyNote","position":[656,-64],"parameters":{"color":7,"width":620,"height":124,"content":"### 🤖 Step 1: Input Validation & Scraping\n\nThe workflow classifies incoming Telegram messages to identify article links. If a valid link is found, BrowserAct scrapes the webpage, purifies the narrative by removing ads/noise, and prepares the text for creative processing."},"typeVersion":1},{"id":"f2ecaf71-c5a6-42d1-9313-4c54a3316383","name":"Step 2 Explanation","type":"n8n-nodes-base.stickyNote","position":[1440,-240],"parameters":{"color":7,"width":652,"height":124,"content":"### ✍️ Step 2: Narrative & Visual Architecture\n\nAI rewrites the article into a long-form children's story. It simultaneously generates highly specific multi-panel comic book prompts and prepares metadata for the final audio and social media posts."},"typeVersion":1},{"id":"46b53f58-b27e-483d-8f6b-90dae5544e12","name":"Step 3 Explanation","type":"n8n-nodes-base.stickyNote","position":[2416,-208],"parameters":{"color":7,"width":908,"height":140,"content":"### 🎙️ Step 3: Multimedia Production and Final Delivery\n\nThe story text is sent to ElevenLabs for high-fidelity voice generation. In parallel, the comic prompts are processed by the Nano Banana Pro image model to create vibrant, stylized storybook illustrations."},"typeVersion":1},{"id":"86ea2741-fff4-4aa2-ad0e-9d2ca428b654","name":"Step 4 Explanation","type":"n8n-nodes-base.stickyNote","position":[1616,512],"parameters":{"color":7,"width":580,"height":120,"content":"### 💬 Step 2-2: Conversational Fallback\n\nIf no link is present in the user's message, this branch engages the user in natural conversation or prompts them to provide a URL for processing."},"typeVersion":1}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"173bfedc-9a8c-42a5-945b-e707a582efa4","connections":{"OpenRouter":{"ai_languageModel":[[{"node":"Summarize the Story","type":"ai_languageModel","index":0},{"node":"Structured Output","type":"ai_languageModel","index":0}]]},"Google Gemini":{"ai_languageModel":[[{"node":"Validate user Input","type":"ai_languageModel","index":0},{"node":"Structured Output Parser","type":"ai_languageModel","index":0}]]},"Google Gemini1":{"ai_languageModel":[[{"node":"Chatting With User","type":"ai_languageModel","index":0}]]},"Loop Over Items":{"main":[[{"node":"Workflow Completion Notification","type":"main","index":0}],[{"node":"Generate Strory image","type":"main","index":0}]]},"Avoid Rate Limits":{"main":[[{"node":"Loop Over Items","type":"main","index":0}]]},"Structured Output":{"ai_outputParser":[[{"node":"Summarize the Story","type":"ai_outputParser","index":0}]]},"Chatting With User":{"main":[[{"node":"Answer the User","type":"main","index":0}]]},"Split Image Prompts":{"main":[[{"node":"Loop Over Items","type":"main","index":0}]]},"Summarize the Story":{"main":[[{"node":"Generate Story Audio","type":"main","index":0},{"node":"Split Image Prompts","type":"main","index":0}]]},"Validate user Input":{"main":[[{"node":"Check For Input Type","type":"main","index":0}]]},"Check For Input Type":{"main":[[{"node":"Process Initialization Alert","type":"main","index":0},{"node":"Get Story via BrowserAct","type":"main","index":0}],[{"node":"Chatting With User","type":"main","index":0}],[{"node":"Chatting With User","type":"main","index":0}]]},"Generate Story Audio":{"main":[[{"node":"Send an audio file To User","type":"main","index":0}]]},"Generate Strory image":{"main":[[{"node":"Send Story Comic Images","type":"main","index":0}]]},"Send Story Comic Images":{"main":[[{"node":"Avoid Rate Limits","type":"main","index":0}]]},"Get Story via BrowserAct":{"main":[[{"node":"Summarize the Story","type":"main","index":0}]]},"Structured Output Parser":{"ai_outputParser":[[{"node":"Validate user Input","type":"ai_outputParser","index":0}]]},"User Sends Message to Bot":{"main":[[{"node":"Validate user Input","type":"main","index":0}]]}}}