From 01efeedbf8f22878f3556743bc9e1e290d4614a0 Mon Sep 17 00:00:00 2001 From: Kilokem Date: Tue, 7 Jan 2025 09:31:05 +0100 Subject: [PATCH] Style and Debug --- HostQuiz.ipynb | 202 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 172 insertions(+), 30 deletions(-) diff --git a/HostQuiz.ipynb b/HostQuiz.ipynb index f635ff4..93c65be 100644 --- a/HostQuiz.ipynb +++ b/HostQuiz.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -20,30 +20,171 @@ "WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.\n", " * Running on http://127.0.0.1:5000\n", "Press CTRL+C to quit\n", - "127.0.0.1 - - [06/Jan/2025 22:27:18] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:27:37] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:27:37] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:27:48] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:27:48] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:15] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:15] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:22] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:22] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:39] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:39] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:51] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:28:52] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:04] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:04] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:08] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:08] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:22] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:22] \"GET / HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:38] \"POST /submit_answer HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:38] \"GET / HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:29:38] \"GET /result HTTP/1.1\" 200 -\n", - "127.0.0.1 - - [06/Jan/2025 22:30:14] \"GET /restart HTTP/1.1\" 302 -\n", - "127.0.0.1 - - [06/Jan/2025 22:30:14] \"GET / HTTP/1.1\" 200 -\n" + "127.0.0.1 - - [07/Jan/2025 08:55:19] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:30] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:30] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:40] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:40] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:59] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:55:59] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:09] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:09] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:17] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:17] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:21] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:21] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:50] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:50] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:59] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:56:59] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:57:12] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:57:12] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:09] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:09] \"GET / HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:09] \"GET /result HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:21] \"GET /restart HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:21] \"GET / HTTP/1.1\" 200 -\n", + "[2025-01-07 08:58:26,826] ERROR in app: Exception on /result [GET]\n", + "Traceback (most recent call last):\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 1511, in wsgi_app\n", + " response = self.full_dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 919, in full_dispatch_request\n", + " rv = self.handle_user_exception(e)\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 917, in full_dispatch_request\n", + " rv = self.dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 902, in dispatch_request\n", + " return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]\n", + " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^\n", + " File \"C:\\Users\\Gosztolya Máté\\AppData\\Local\\Temp\\ipykernel_5092\\533862744.py\", line 103, in result\n", + " correct_answers = selected_questions[i]['correct_answers']\n", + " ~~~~~~~~~~~~~~~~~~^^^\n", + "IndexError: list index out of range\n", + "127.0.0.1 - - [07/Jan/2025 08:58:26] \"GET /result HTTP/1.1\" 500 -\n", + "127.0.0.1 - - [07/Jan/2025 08:58:40] \"GET / HTTP/1.1\" 302 -\n", + "[2025-01-07 08:58:40,659] ERROR in app: Exception on /result [GET]\n", + "Traceback (most recent call last):\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 1511, in wsgi_app\n", + " response = self.full_dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 919, in full_dispatch_request\n", + " rv = self.handle_user_exception(e)\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 917, in full_dispatch_request\n", + " rv = self.dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 902, in dispatch_request\n", + " return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]\n", + " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^\n", + " File \"C:\\Users\\Gosztolya Máté\\AppData\\Local\\Temp\\ipykernel_5092\\533862744.py\", line 103, in result\n", + " correct_answers = selected_questions[i]['correct_answers']\n", + " ~~~~~~~~~~~~~~~~~~^^^\n", + "IndexError: list index out of range\n", + "127.0.0.1 - - [07/Jan/2025 08:58:40] \"GET /result HTTP/1.1\" 500 -\n", + "127.0.0.1 - - [07/Jan/2025 08:59:29] \"GET / HTTP/1.1\" 302 -\n", + "[2025-01-07 08:59:29,804] ERROR in app: Exception on /result [GET]\n", + "Traceback (most recent call last):\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 1511, in wsgi_app\n", + " response = self.full_dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 919, in full_dispatch_request\n", + " rv = self.handle_user_exception(e)\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 917, in full_dispatch_request\n", + " rv = self.dispatch_request()\n", + " File \"i:\\OwnCodes\\Python\\Portalfejlesztes-Teszt-PythonQuiz\\venv\\Lib\\site-packages\\flask\\app.py\", line 902, in dispatch_request\n", + " return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]\n", + " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^\n", + " File \"C:\\Users\\Gosztolya Máté\\AppData\\Local\\Temp\\ipykernel_5092\\533862744.py\", line 103, in result\n", + " correct_answers = selected_questions[i]['correct_answers']\n", + " ~~~~~~~~~~~~~~~~~~^^^\n", + "IndexError: list index out of range\n", + "127.0.0.1 - - [07/Jan/2025 08:59:29] \"GET /result HTTP/1.1\" 500 -\n", + "127.0.0.1 - - [07/Jan/2025 09:00:17] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:09:44] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:09:44] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:05] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:05] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:10] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:10] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:39] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:39] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:45] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:10:45] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:14] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:14] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:19] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:19] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:26] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:26] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:38] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:38] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:47] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:47] \"GET / HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:11:47] \"GET /result HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:13] \"GET /restart HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:13] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:36] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:36] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:53] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:13:53] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:18] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:18] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:29] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:29] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:58] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:14:58] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:01] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:01] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:05] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:05] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:12] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:12] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:28] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:15:28] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:20:10] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:20:11] \"GET / HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:20:11] \"GET /result HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:20:39] \"GET /restart HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:20:39] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:12] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:12] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:33] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:33] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:56] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:24:57] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:01] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:01] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:40] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:40] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:43] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:43] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:48] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:48] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:52] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:25:52] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:26:47] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:26:47] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:26:58] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:26:58] \"GET / HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:26:58] \"GET /result HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:27:25] \"GET /restart HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:27:25] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:09] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:09] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:14] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:14] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:28] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:28] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:33] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:33] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:46] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:46] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:50] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:50] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:57] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:28:57] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:24] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:24] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:43] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:43] \"GET / HTTP/1.1\" 200 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:48] \"POST /submit_answer HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:48] \"GET / HTTP/1.1\" 302 -\n", + "127.0.0.1 - - [07/Jan/2025 09:29:48] \"GET /result HTTP/1.1\" 200 -\n" ] } ], @@ -80,11 +221,12 @@ " answers.append(answer)\n", "\n", " # Add the parsed question, answers, and correct answers to the list\n", - " questions.append({\n", - " 'question': question,\n", - " 'answers': answers + correct_answers, # Append correct answers at the end\n", - " 'correct_answers': correct_answers\n", - " })\n", + " if correct_answers:\n", + " questions.append({\n", + " 'question': question,\n", + " 'answers': answers + correct_answers, # Append correct answers at the end\n", + " 'correct_answers': correct_answers\n", + " })\n", "\n", " return questions\n", "\n",