ramedde commited on
Commit
1388a69
·
verified ·
1 Parent(s): ef3cb65

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +183 -109
app.py CHANGED
@@ -84,151 +84,225 @@ def get_llm():
84
  n_gpu_layers=int(os.getenv("N_GPU_LAYERS", "-1")), verbose=False)
85
  print("[law-app] النموذج جاهز.")
86
  return _llm
87
-
88
  LESSONS = [
89
- {
90
- "title": "الدرس الأول — المبادئ التوجيهية للإثبات والمحاكمة العادلة",
91
- "text": """
92
- بناءً على الفقه الجنائي الفرنسي، يرتكز الإطار العام للخصومة الجزائية على مبدأين أساسيين: المحاكمة العادلة وحرية الإثبات.
93
 
94
- الجزء الأول: الحق في محاكمة عادلة وقرينة البراءة.
95
- يُعتبر الحق في محاكمة عادلة (المستمد من الاتفاقيات الدولية كالمادة 6 من الاتفاقية الأوروبية لحقوق الإنسان) حجر الزاوية في الإجراءات. هذا المبدأ يفرض توازناً بين حقوق الدفاع وسلطات الاتهام (مبدأ المساواة في الأسلحة). وتُعد قرينة البراءة امتداداً طبيعياً لهذا الحق، حيث يتحمل الادعاء (النيابة) عبء إثبات التهمة، ويُفسر أي شك لصالح المتهم (In dubio pro reo).
96
- 📌 الإسقاط على القانون الجزائري: تبنى المشرع الجزائري هذه الفلسفة صراحة في المادة (1) من قانون الإجراءات الجزائية، حيث نص على أن القانون يقوم على "مبادئ الشرعية والمحاكمة العادلة واحترام كرامة وحقوق الإنسان"، وأكد أن "الشك يفسر في كل الأحوال لصالح المتهم".
97
-
98
- الجزء الثاني: حرية الإثبات والاقتناع الشخصي (L'intime conviction).
99
- في المادة الجنائية، وخلافاً للمادة المدنية، النظام السائد هو "الأدلة المعنوية" وليس الأدلة القانونية المقيدة. القاضي يبني حكمه على "قناعته الصميمة" بناءً على ما يُعرض أمامه من أدلة خضعت للنقاش الوجاهي (العلني والمتبادل).
100
- 📌 الإسقاط على القانون الجزائري: نجد هذا المبدأ مجسداً في المادة (349)، التي تنص على جواز إثبات الجرائم بأي طريق، وأن القاضي "يصدر حكمه تبعا لاقتناعه الخاص". كما تؤكد المادة (442) الخاصة بمحكمة الجنايات على سؤال المحلفين: "هل لديكم اقتناع شخصي؟".
101
-
102
- الجزء الثالث: مبدأ مشروعية الدليل (La loyauté de la preuve).
103
- يشير الفقه الفرنسي إلى أن حرية الإثبات ليست مطلقة؛ إذ يُمنع على السلطات العامة استخدام "الحيل" (Stratagèmes) أو الاستفزاز لارتكاب الجريمة من أجل الحصول على دليل.
 
 
 
 
 
 
 
 
 
 
 
104
  """,
105
  "questions": [
106
- {"q": "ما هو المبدأ اللاتيني الذي يعني أن الشك يفسر لصالح المتهم، وأين نجد تطبيقه في القانون الجزائري؟",
107
- "hint": "مبدأ In dubio pro reo، وتم تكريسه بوضوح في المادة (1) من قانون الإجراءات الجزائية الجزائري."},
108
- {"q": "ما هو الفرق بين نظام الأدلة القانونية ونظام الاقتناع الشخصي (L'intime conviction)؟",
109
- "hint": "الأدلة القانونية تلزم القاضي بقيمة محددة للدليل (كالمدنيبينما الاقتناع الشخصي يترك للقاضي حرية تقييم الدليل بناءً على وجدانه وضميره (كما في المادة 349 جزائري)."},
110
- {"q": "ما المقصود بمبدأ (loyauté de la preuve) أو مشروعية الدليل بالنسبة لسلطات الأمن؟",
111
- "hint": "عدم لجوء السلطات إلى الحيل الخداعية أو الاستفزاز لارتكاب الجريمة من أجل الإيقاع بالمتهم وجمع الأدلة ضده."},
112
- ],
113
  },
114
  {
115
- "title": "الدرس الثاني — أجهزة الدعوى: النيابة العامة والشرطة القضائية",
116
  "text": """
117
- تعتمد الإجراءات الجزائية على أجهزة مكلفة باكتشاف الجريمة وتحريك الدعوى، وهي الشرطة القضائية والنيابة العامة.
118
-
119
- الجزء الأول: الشرطة القضائية والفرق بينها وبين الشرطة الإدارية.
120
- يفرق الفقه الفرنسي بوضوح بين "الشرطة الإدارية" (هدفها وقائي بحت لمنع الإخلال بالنظام العام) و"الشرطة القضائية" (هدفها قمعي يبدأ عند وقوع الجريمة للبحث عن مرتكبيها). رجال الشرطة القضائية يتصرفون تحت إدارة النيابة العامة.
121
- 📌 الإسقاط على القانون الجزائري: نجد هذا التقسيم الهرمي في القانون الجزائري، حيث توضع الشرطة القضائية تحت إشراف "النائب العام" وإدارة "وكيل الجمهورية" ورقابة "غرفة الاتهام" لمادة 20)، وتضم ضباطاً (OPJ) وأعواناً (APJ) بمهام محددة (المواد 22 وما يليها).
122
-
123
- الجزء الثاني: النيابة العامة ومبدأ ملاءمة المتابعة (L'opportunité des poursuites).
124
- النيابة العامة (النيابة) هي خصم في الدعوى، ولكنها تدافع عن المجتمع. تتميز النيابة العامة بخاصيتين فقهيتين:
125
- 1. التبعية التدرجية (الخضوع للسلطة الرئاسية)، والتي يُعبر عنها بالمثل الفرنسي المأثور: "القلم عبد، لكن الكلمة حرة" (La plume est serve, mais la parole est libre)؛ أي أن القاضي ملزم بالتعليمات المكتوبة لرؤسائه، لكنه حر في إبداء رأيه شفهياً في الجلسة.
126
- 2. مبدأ "ملاءمة المتابعة": النيابة ليست ملزمة بمتابعة كل جريمة تصل لعلمها، بل تُقّدر ما إذا كانت المتابعة ملائمة أم أن حفظ الملف أفضل.
127
- 📌 الإسقاط على القانون الجزائري: تم تكريس مبدأ الاستقلالية الشفوية في المادة (41): "ولهم أن يبدوا بكل حرية ملاحظاتهم الشفوية التي يرونها لازمة لصالح العدالة". كما تكرس المادة (47) مبدأ ملاءمة المتابعة بتمكين وكيل الجمهورية من حفظ الملف لعدم الملاءمة.
 
 
 
 
 
 
 
 
 
 
 
 
128
  """,
129
  "questions": [
130
- {"q": "اشرح القاعدة الفقهية: (القلم عبد والكلمة حرة) وكيف طبقها القانون الجزائري؟",
131
- "hint": "تعني خضوع عضو النيابة للتعليمات المكتوبة لرؤسائه، لكنه يتمتع بحرية إبداء رأيه الشفوي في الجلسة. كرسها القانون الجزائري في المادة (41)."},
132
- {"q": "ما الفرق الجوهري بين الشرطة الإدارية والشرطة القضائية؟",
133
- "hint": "الشرطة الإدارية وقائية منع الجريمة)، والشرطة القضائية قمعية وإجرائية (تبدأ بعد وقوع الجريمة لجمع الأدلة)."},
134
- {"q": "ماذا يُقصد بمبدأ (ملاءمة المتابعة) الممنوح لوكيل الجمهورية؟",
135
- "hint": "سلطة وكيل الجمهورية في تقييم ما إذا كان من الأفضل للمجتمع تحريك الدعوى أو حفظ الملف لعدم الملاءمة (المادة 47)."},
136
- ],
137
  },
138
  {
139
- "title": "الدرس الثالث — الدعاوى الناشئة عن الجريمة وأسباب انقضائها",
140
  "text": """
141
- تولد الجريمة حقين: حق المجتمع في توقيع العقاب (الدعوى العمومية)، وحق الضحية في التعويض (الدعوى المدنية).
142
-
143
- الجزء الأول: استقلالية وتداخل الدعويين.
144
- الدعوى العمومية هي الهدف الأصلي للإجراءات، بينما الدعوى المدنية هي دعوى تابعة (Accessoire). ومع ذلك، للضحية خيار (Droit d'option) إما اللجوء للقضاء المدني المستقل، أو الانضمام كـ "طرف مدني" (Partie civile) أمام القضاء الجزائي.
145
- 📌 الإسقاط على القانون الجزائري: سمح القانون الجزائري (المادتان 3 و 4) للطرف المتضرر بمباشرة الدعوى المدنية مع الدعوى العمومية. كما كرس القاعدة الفقهية "الجزائي يعقل المدني" (Le criminel tient le civil en l'état) في المادة (5)، التي توجب على القاضي المدني إرجاء الفصل حتى يفصل القضاء الجزائي.
146
-
147
- الجزء الثاني: انقضاء الدعوى والتقادم.
148
- حسب الفقه، التقادم (Prescription) مبرره فقدان الأدلة مع مرور الزمن، ونسيان المجتمع للاضطراب الذي خلفته الجريمة.
149
- هناك إشكالية فقهية حول "الجرائم الخفية" (Infractions occultes ou dissimulées)؛ متى يبدأ تقادمها؟ استقر الفقه الفرنسي على تأخير بدء التقادم إلى يوم اكتشاف الجريمة، مع وضع "سقف زمني" (Plafond) لضمان عدم بقاء التهديد بالمتابعة للأبد.
150
- 📌 الإسقاط على القانون الجزائري: تطرق المشرع الجزائري لانقضاء الدعوى في المادة (9). وتبنى بدقة نظرية الجرائم الخفية والمخفية في المادة (15)، حيث جعل سريان التقادم يبدأ من "يوم ظهورها للعلن"، وحدد لها سقوفاً زمنية صارمة (كحد أقصى 25 سنة للجنايات من يوم الاقتراف).
 
 
 
151
  """,
152
  "questions": [
153
- {"q": "ماذا تعني القاعدة الفقهية (الجزائي يعقل المدني) المكرسة في المادة (5) من القانون الجزائري؟",
154
- "hint": "تعني أن القاضي المدني يجب أن يوقف الفصل في دعوى التعويض المرفوعة أمامه، حتى يصدر حكم نهائي في الدعوى الجزائية المرتبطة بها."},
155
- {"q": "ما هي الجريمة المخفية (Infraction dissimulée) وكيف يعالجها القانون من حيث التقادم؟",
156
- "hint": "هي الجريمة التي يضع الجاني مناورات لإخفائها. لا يبدأ تقادمها إلا من يوم ظهورها للعلن، مع احترام سقف زمني أقصى حدده القانون الجزائري في المادة (15)."},
157
- {"q": "هل تنازل الضحية عن الدعوى المدنية يوقف الدعوى العمومية؟",
158
- "hint": "كقاعدة عامة لا يوقفها (لأن الدعوى العمومية ملك للمجتمع)، إلا في الحالات الاستثنائية التي يعلق فيها القانون المتابعة على شكوى (المادة 3)."},
159
- ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
160
  },
161
  {
162
- "title": "الدرس الرابع — التحقيق التحضيري والحرية الفردية",
163
  "text": """
164
- يعتبر التحقيق التحضيري (L'instruction préparatoire) مرحلة وسطى بين التحريات والمحاكمة، ويتميز بطبيعة مزدوجة تمزج بين النظام التنقيبي (Inquisitoire - سري ومكتوب) والنظام الاتهامي (Accusatoire - وجاهي وضمانات دفاع).
165
-
166
- الجزء الأول: إخطار قاضي التحقيق (La saisine in rem).
167
- من المبادئ الفقهية الكبرى أن قاضي التحقيق يُخطر بالوقائع لا بالأشخاص (Saisine in rem). لا يملك القاضي حق التصدي من تلقاء نفسه، بل يجب أن يأتيه "طلب افتتاحي" من النيابة. إذا اكتشف وقائع جديدة، لا يجوز له التحقيق فيها إلا بعد الحصول على "طلب إضافي" (Réquisitoire supplétif).
168
- 📌 الإسقاط على القانون الجزائري: كرس المشرع الجزائري هذا المبدأ في المادة (140) بمنع قاضي التحقيق من إجراء تحقيق إلا بموجب طلب من وكيل الجمهورية. وإذا ظهرت وقائع جديدة، تعين عليه إحالتها فوراً لوكيل الجمهورية.
169
-
170
- الجزء الثاني: المساس بالحرية (الحبس المؤقت والرقابة).
171
- يؤكد الفقه على أن المتهم بريء حتى تثبت إدانته، وبالتالي فالحرية هي الأصل والتقييد هو الاستثناء. الحبس المؤقت (Détention provisoire) هو أشد تدبير، ويُشترط الفقه أن يكون الخيار الأخير (L'ultime recours).
172
- 📌 الإسقاط على القانون الجزائري: تماشياً مع هذا، قررت المادة (197) أن المتهم يبقى حراً، ويمكن اللجوء لـ "الرقابة القضائية". ولا يُلجأ إلى "الحبس المؤقت" إلا بصفة "استثنائية" وبموجب أمر مسبب (المادة 201)، وضمن مدد زمنية مقيدة جداً (المواد 202 - 204).
 
 
 
 
 
 
 
 
 
173
  """,
174
  "questions": [
175
- {"q": "ما معنى قاعدة الإخطار ��لعيني (Saisine in rem) لقاضي التحقيق؟",
176
- "hint": "تعني أن قاضي التحقيق مقيد بالتحقيق في الوقائع (الأفعال) المحددة في طلب النيابة العامة، ولا يملك حق التحقيق في وقائع جديدة يكتشفها من تلقاء نفسه (المادة 140 جزائري)."},
177
- {"q": "كيف وازن القانون بين حق المجتمع في التحقيق وحق المتهم في الحرية؟",
178
- "hint": "بجعل الحرية هي الأصل (المادة 197)، والرقابة القضائية هي البديل الأول، واعتبار الحبس المؤقت تدبيراً استثنائياً له مبررات صارمة ومدد زمنية قصوى (المادة 201)."},
179
- {"q": "ماذا يسمى الطلب الذي يوجهه وكيل الجمهورية لقاضي التحقيق للتحقيق في وقائع جديدة مكتشفة؟",
180
- "hint": "يُسمى الطلب الإضافي للتحقيق (Réquisitoire supplétif)."},
181
- ],
182
  },
183
  {
184
- "title": "الدرس الخامس — المحاكمة وقوة الشيء المقضي فيه",
185
  "text": """
186
- تعتبر مرحلة المحاكمة تتويجاً للإجراءات، وتتميز بالعلنية والمشافهة والوجاهية (النقاش الحضوري).
 
 
 
 
 
 
 
 
 
 
 
 
187
 
188
- الجزء الأول: المحاكمة الغيابية (Le jugement par défaut / La contumace).
189
- تاريخياً، كان يُطلق على محاكمة الجنايات غيابياً مصطلح "التمرد" (Contumace)، وكانت إجراءاتها قاسية جداً تحرم المتهم من الدفاع. تطور الفقه الأوروبي (خاصة اجتهادات المحكمة الأوروبية لحقوق الإنسان) للقضاء على هذه التسمية واستبدالها بإجراءات الغياب التي تضمن حداً أدنى من الحقوق.
190
- 📌 الإسقاط على القانون الجزائري: القانون الجزائري (المواد 451 وما يليها) نظم المحاكمة في الغياب أمام محكمة الجنايات بشكل يضمن أنه إذا حضر محامي المتهم الغائب (بعذر مقبول)، فإنه يرافع عنه وتعتبر المحاكمة حضورية. وإذا كان الغياب بدون عذر، يحاكم غيابياً بدون محلفين (المادة 452).
191
 
192
- الجزء الثاني: حجية الشيء المقضي فيه (L'autorité de la chose jugée / Non bis in idem).
193
- ينص المبدأ الفقهي الشهير "Non bis in idem" على أنه لا يجوز محاكمة الشخص عن نفس الفعل مرتين. ويشترط لنجاح هذا الدفع توافر ثلاثة عناصر: وحدة الوقائع، وحدة الأطراف، ووحدة السبب.
194
- 📌 الإسقاط على القانون الجزائري: تُعتبر "قوة الشيء المقضي فيه" سبباً من أسباب انقضاء الدعوى العمومية (المادة 9). وقد نصت المادة (1) بصيغة صريحة: "لا يجوز متابعة أو محاكمة أو معاقبة شخص مرتين من أجل نفس الأفعال ولو تم إعطاؤها وصفا مغايرا".
195
  """,
196
  "questions": [
197
- {"q": "ما هو مبدأ (Non bis in idem) وأين تم النص عليه في قانون الإجراءات الجزائية الجزائري؟",
198
- "hint": "هو مبدأ عدم جواز محاكمة الشخص مرتين عن نفس الأفعال، وقد كُرس في المادة (1) كنقطة مبدئية، وفي المادة (9) كسبب لانقضاء الدعوى."},
199
- {"q": "كيف تعامل المشرع الجزائري مع غياب المتهم أمام محكمة الجنايات؟",
200
- "hint": "إذا غاب المتهم غياباً غير مبرر، يُحاكم غيابياً بواسطة القضاة فقط (بدون إشراك المحلفين) وفقاً للمادة (451)."},
201
- {"q": "لماذا شدد الفقه الحديث على إلغاء مصطلح وإجراءات (التمرد - Contumace)؟",
202
- "hint": "لأنها كانت تحرم المتهم الغائب من أي حق في الدفاع حتى لو حضر محاميه، وهو ما يتعارض مع الحقوق الأساسية للمحاكمة العادلة."},
203
- ],
204
  },
205
  {
206
- "title": "الدرس السادس — بدائل المتابعة والعدالة التفاوضية",
207
  "text": """
208
- ظهر في الفقه الجنائي الحديث توّجه نحو "العدالة التفاوضية" لتخفيف العبء عن المحاكم، وتسريع الإجراءات في الجرائم غير الخطيرة.
209
 
210
- الجزء الأول: الوساطة الجزائية (La médiation pénale).
211
- هي بديل للمتابعة يعتمد على الصلح بين الجاني والضحية. تهدف إلى جبر الضرر وإعادة السلم الاجتماعي دون الحاجة لصدور حكم إدانة.
212
- 📌 الإسقاط على القانون الجزائري: نظمها المشرع في المواد (59 إلى 68). يمكن لوكيل الجمهورية اقتراحها قبل تحريك الدعوى في جنح معينة (كخيانة الأمانة، التهديد، السب العلني). تنفيذ اتفاق الوساطة يؤدي إلى انقضاء الدعوى العمومية (المادة 9).
213
 
214
- الجزء الثاني: الأمر الجزائي (L'ordonnance pénale).
215
- هو إجراء مبسط بدون جلسة مرافعة.
216
- 📌 الإسقاط على القانون الجزائري: حددته المواد (531 إلى 538) في المخالفات والجنح البسيطة (عقوبتها أقل من سنتين). يفصل القاضي من مكتبه بغرامة أو براءة بناء على طلب النيابة، وللمتهم حق "الاعتراض".
 
217
 
218
- الجزء الثالث: المثول بناءً على الاعتراف المسبق بالذنب (CRPC - Le plaider-coupable).
219
- مستوحى من النظم الأنجلوسكسونية، وهو إجراء يعرض فيه المدعي العام عقوبة مخففة على المتهم مقابل اعترافه.
220
- 📌 الإسقاط على القانون الجزائري: كرسه القانون الجزائري في المواد (539 إلى 548). إذا اعترف المتهم، يقترح عليه وكيل الجمهورية عقوبة (لا تتجاوز نصف الحد الأقصى للحبس). يُصادق عليها قاضي الحكم في جلسة، ويكون للمحضر قوة الإدانة.
 
 
 
 
 
 
 
 
221
  """,
222
  "questions": [
223
- {"q": "ما هي الميزة الأساسية لـ (الوساطة الجزائية) في القانون الجزائري؟",
224
- "hint": "أن تنفيذ اتفاق الوساطة بين الطرفين يؤدي إلى انقضاء الدعوى العمومية دون تسجيل إدانة قضائية (المادتان 9 و 59)."},
225
- {"q": "في إجراء (المثول بناء على الاعتراف المسبق بالذنب)، ما هو الحد الأقصى للعقوبة التي يمكن للنيابة اقتراحها؟",
226
- "hint": "يجب ألا تتجاوز مدة الحبس المقترحة نصف (1/2) الحد الأقصى للعقوبة المقررة قانوناً لتلك الجنحة (المادة 541)."},
227
- {"q": "بماذا يختلف إجراء (الأمر الجزائي) عن المحاكمة العادية؟",
228
- "hint": "الأمر الجزائي يتم بدون مرافعة وجاهية في الجلسة، حيث يفصل القاضي بناءً على الملف فقط، وبعقوبة الغرامة أو البراءة (المادة 533)."},
229
- ],
230
  }
 
231
  ]
 
 
232
  LISTEN_SECONDS = 10 # 900 في بيئة الإنتاج (15 دقيقة)
233
  PASS_SCORE = 6
234
 
 
84
  n_gpu_layers=int(os.getenv("N_GPU_LAYERS", "-1")), verbose=False)
85
  print("[law-app] النموذج جاهز.")
86
  return _llm
 
87
  LESSONS = [
 
 
 
 
88
 
89
+ {
90
+ "title": "الدرس الأول الأعداد من 0 إلى 999 لب الحلوى السحرية)",
91
+ "text": """
92
+ مرحباً بك يا بطل! تخيل أن لدينا ثلاث علب نضع فيها قطع الحلوى السحرية:
93
+ 1. علبة الوحدات (و): نضع فيها حبات الحلوى الفردية (من 1 إلى 9).
94
+ 2. علبة العشرات (ع): نضع فيها علباً صغيرة، كل علبة بها 10 حبات.
95
+ 3. علبة المئات (م): نضع فيها علباً كبيرة، كل علبة بها 100 حبة.
96
+
97
+ أولاً: كيف نقرأ ونكتب العدد؟ (الصفحة 17)
98
+ لو كان لدينا العدد (659):
99
+ - ننظر للعلبة الكبيرة أولاً (المئات): لدينا 6 علب من فئة 100، فنقول: "ستمائة".
100
+ - ثم ننظر لعلبة الوحدات: لدينا 9 حبات فردية، فنقول: "وتسعة".
101
+ - ثم علبة العشرات: لدينا 5 علب من فئة 10، فنقول: "وخمسون".
102
+ نقرأ العدد كاملاً هكذا: "سِتُّمِائَةٍ وَتِسْعَةٌ وَخَمْسُونَ".
103
+
104
+ ثانياً: كيف نفكك العدد؟ (الصفحة 17)
105
+ التفكيك يعني أن نفتح العلب ونرى كم حبة حلوى بداخلها بالكامل:
106
+ - التفكيك بالجمع: نأخذ كل منزلة ونكتب قيمتها:
107
+ 659 = 600 + 50 + 9
108
+ - التفكيك بالضرب والجمع: نكتب كم علبة لدينا في كل منزلة:
109
+ 659 = (6 × 100) + (5 × 10) + 9
110
  """,
111
  "questions": [
112
+ {"q": "اكتب العدد (أربعمائة واثنان وثلاثون) بالأرقام ثم فككه تفكيكاً بالجمع.",
113
+ "hint": "العدد يكتب 432، وتفكيكه هو: 432 = 400 + 30 + 2 (انظر الصفحة 17)."},
114
+ {"q": "ما هي مرتبة الرقم 5 في العدد 527؟ وكم حبة حلوى يمثل؟",
115
+ "hint": "مرتبته هي المئات (م)، ويمثل 500 حبة حلوى سحرية (انظر الصفحة 17)."},
116
+ {"q": "افتح علب العدد 854 وفككه بطريقة الضرب والجمع.",
117
+ "hint": "التفكيك هو: 854 = (8 × 100) + (5 × 10) + 4 (انظر الصفحة 25)."}
118
+ ]
119
  },
120
  {
121
+ "title": "الدرس الثاني — الجمع والطرح (استراتيجيات الحساب الذكي والضفدع القفاز)",
122
  "text": """
123
+ مرحبا يا ذكي! هناك طرق ممتعة تساعدك على الجمع والطرح بسرعة في ذهنك:
124
+
125
+ أولاً: الجمع بالتفكيك والإتمام (الصفحة 14)
126
+ لو أردنا حساب: 54 + 7
127
+ - العدد 54 قريب جداً من الـ 60 (يحتاج فقط إلى 6 خطوات ليصل إليها).
128
+ - نذهب للـ 7 ونأخذ منها 6 خطوات، فتبقى الـ 7 عبارة عن (6 + 1).
129
+ - الآن نجمع بسهولة: 54 + 6 = 60، ثم نضيف الـ 1 المتبقي: 60 + 1 = 61.
130
+ - إذن: 54 + 7 = 61.
131
+
132
+ ثانياً: الطرح بالشريط العددي وقفزة الضفدع (ا��صفحة 14)
133
+ لو أردنا حساب: 54 - 7
134
+ - تخيل أنك ضفدع يقف عند الرقم 54، وتريد القفز للخلف 7 خطوات.
135
+ - أولاً، اقفز قفزة سهلة للخلف بـ 4 خطوات لتصل للرقم المستدير السهل 50.
136
+ - بقيت لك 3 خطوات لتكمل قفزاتك السبع؛ اقفزها للخلف من الـ 50 لتصل إلى 47.
137
+ - إذن: 54 - 7 = 47.
138
+
139
+ ثالثاً: الجمع العمودي بالاحتفاظ (الصفحة 28)
140
+ لو أردنا حساب: 191 + 547
141
+ - نرتب الأرقام بدقة: الوحدات تحت الوحدات، العشرات تحت العشرات، والمئات تحت المئات.
142
+ - نجمع الوحدات: 1 + 7 = 8.
143
+ - نجمع العشرات: 9 + 4 = 13. لا نكتب 13 كاملة! نكتب 3 ونضع الـ 1 (كضيف) فوق المئات.
144
+ - نجمع المئات مع الضيف: 1 (الضيف) + 1 + 5 = 7.
145
+ - النتيجة النهائية هي: 738.
146
  """,
147
  "questions": [
148
+ {"q": "احسب بذهنك مستعملاً التفكيك والإتمام إلى العشرة الموالية: 59 + 3.",
149
+ "hint": "نأخذ 1 من الـ 3 لنتمم 59 إلى 60، ويبقى 2. النتيجة هي 60 + 2 = 62 (انظر الصفحة 14)."},
150
+ {"q": "باستخدام قفزة الضفدع للخلف على الشريط العددي، احسب: 92 - 23.",
151
+ "hint": "اطرح 20 خطوة لتصل إلى 72، ثم اطرح 3 خطوات لتصل إلى 69. النتيجة هي 69 (انظر الصفحة 20)."},
152
+ {"q": "أوجد نتيجة العملية التالية عمودياً مع الانتباه للضيف المحتفظ به: 325 + 12.",
153
+ "hint": "نرتب الوحدات والعشرات بدقة: 5+2=7 في الوحدات، 2+1=3 في العشرات، و3 في المئات. النتيجة هي 337 نظر الصفحة 24)."}
154
+ ]
155
  },
156
  {
157
+ "title": "الدرس الثالث — الهندسة ريطة الكنز والقطار المستقيم)",
158
  "text": """
159
+ مرحباً بك يا بطل الهندسة! اليوم سنتعلم درسين رائعين في الفضاء والرسم:
160
+
161
+ أولاً: تحديد المواقع على المرصوفة (خريطة الكنز) (الصفحة 16)
162
+ المرصوفة هي شبكة مربعات تشبه خريطة الكنز السري.
163
+ - الأسطر مرقمة بأرقام (1، 3...) والأعمدة معلمة بحروف (أ، ب، ج...).
164
+ - لتحديد مكان أي حيوان أو كنز، ننظر للعمود والسطر اللذين يلتقي عندهما.
165
+ - نكتب الموقع هكذا: (العمود ، السطر).
166
+ - مثلاً: إذا كان "الأسد" يقع في العمود (أ) والسطر (3)، نكتب موقعه: (أ ، 3).
167
+
168
+ ثانياً: الاستقامية ورسم الخطوط (الصفحة 31)
169
+ - هل تعرف كيف تسير سكة القطار؟ تسير في خط مستقيم تماماً.
170
+ - لمعرفة هل النقاط مرسومة في استقامية واحدة أم لا، نضع حافة مسطرتنا عليها.
171
+ - إذا لامست حافة المسطرة جميع النقاط في نفس الوقت، واستطعنا رسم خط مستقيم يجمعها كلها، نقول: "هذه النقط في استقامية واحدة".
172
  """,
173
  "questions": [
174
+ {"q": "إذا كان الغزال يقع في العمود) والسطر (2)، كيف نكتب موقع خانته؟",
175
+ "hint": "نكتب موقعه داخل قوسين هكذا: ، 2) (انظر الصفحة 16)."},
176
+ {"q": "كيف نتأكد من أن النقط المرسومة على كراسك تقع في استقامية واحدة؟",
177
+ "hint": "نضع حافة المسطرة عليها؛ فإذا لامست حافة المسطرة كل النقط معاً، فهي في استقامية واحدة (انظر الصفحة 31)."},
178
+ {"q": "إذا تحرك رائد خطوة واحدة لليمين وخطوة للأعلى من الخانة (ب ، 4)، فما هي خانته الجديدة؟",
179
+ "hint": "العمود ب لليمين يصبح ج، والسطر 4 للأعلى يصبح 3. الخانة الجديدة هي ، 3) (انظر الصفحة 16)."}
180
+ ]
181
+ }
182
+ , {
183
+ "title": "الدرس الثالث — مقارنة أطوال (سباق النملات الذكيات)",
184
+ "text": """
185
+ مرحباً بك يا بطل! في هذا الدرس سنتعلم كيف نقارن بين الأطوال [Page 15].
186
+
187
+ تخيل أن لدينا ثلاث نملات ذكيات يتسابقن للوصول إلى قطعة سكر:
188
+ - النملة الأولى مشت في طريق أخضر متعرج.
189
+ - النملة الثانية مشت في طريق بنفسجي منحنٍ.
190
+ - النملة الثالثة مشت في طريق برتقالي منكسر.
191
+
192
+ كيف نعرف أي طريق هو الأقصر لتفوز النملة بالجائزة؟
193
+ 1. المسطرة الصلبة لا تكفي: لأن الطرق ليست مستقيمة تماماً!
194
+ 2. الحل السحري: نستخدم "خيطاً" أو "شريطاً من الورق المقوى".
195
+ 3. طريقة القياس:
196
+ - نضع الخيط فوق الطريق المتعرج بدقة من البداية إلى الن��اية.
197
+ - نقطع الخيط أو نضع علامة عليه عند نهاية الطريق.
198
+ - نفرد الخيط ليصبح مستقيماً، ثم نقيس طوله بالمسطرة المدرجة!
199
+ - نفعل نفس الشيء مع بقية الطرق، والطريق الذي يعطينا أقصر خيط هو الطريق الأقصر للفوز.
200
+
201
+ تعلمتُ: لمقارنة أطوال صغيرة أو منحنية، نستعمل خيطاً أو شريطاً من الورق، ثم نقيسه بالمسطرة.
202
+ """,
203
+ "questions": [
204
+ {"q": "إذا كان لدينا طريقان متعرجان، كيف نقارن بين طوليهما بدون مسطرة مباشرة؟",
205
+ "hint": "نستخدم خيطاً نضعه فوق كل طريق، ثم نقارن طولي الخيطين لنرى أيهما أطول (انظر الصفحة 15)."},
206
+ {"q": "مستعيناً بالمسطرة، رتب المسارات التالية تصاعدياً (من الأقصر للأطول): 1500m، 2km 30m، 1km 25m.",
207
+ "hint": "نعلم أن 1km = 1000m. إذن: الأول هو 1025m، والثاني 1500m، والثالث 2030m (انظر الصفحة 57)."}
208
+ ]
209
  },
210
  {
211
+ "title": "الدرس الرابع — التنقل على مرصوفة (رحلة رائد ومواقع الحيوانات)",
212
  "text": """
213
+ أهلاً بك يا مستكشف! اليوم سنتعلم كيف نتحرك على المرصوفة ونشفر المسارات [Page 16].
214
+
215
+ المرصوفة هي شبكة مربعات تشبه خريطة الألعاب:
216
+ - الأعمدة معلمة بحروف من الأسفل: (أ، ب، ج، د، هـ...).
217
+ - الأسطر مرقمة من الجانب: (1، 5، 6...).
218
+
219
+ أولاً: كيف نجد موقع حيوان على المرصوفة؟
220
+ لتحديد مكان "الغزالة" أو "الدب نقوم بخطوتين:
221
+ 1. ننزل بأعيننا عمودياً لنرى الحرف المقابل لها (العمود).
222
+ 2. نذهب بأعيننا أفقياً نحو الجانب لنرى الرقم المقابل لها (السطر).
223
+ نكتب الموقع داخل قوسين هكذا: (الحرف ، الرقم).
224
+ مثال: إذا كان الدب يقع في العمود (أ) والسطر (3)، فإن تشفيره هو: (أ ، 3).
225
+
226
+ ثانياً: كيف نشفر مسار التنقل؟
227
+ عندما يتحرك رائد من المدرسة إلى المنزل، فإنه يتبع خطوات ملونة.
228
+ - نرمز للحركة نحو اليمين بسهم: (→)
229
+ - نرمز للحركة نحو الأسفل بسهم: (↓)
230
+ تشفير المسلك هو كتابة تتابع هذه الأسهم خطوة بخطوة حتى نصل للنهاية.
231
  """,
232
  "questions": [
233
+ {"q": "إذا كان الفيل يقع في العمود (ج) والسطر (2)، اكتب تشفير موقع الفيل.",
234
+ "hint": "التشفير يكتب بين قوسين هكذا: (ج ، 2) (انظر الصفحة 16)."},
235
+ {"q": "ما هي الحركات التي نرمز لها بالأسهم (→) و (↓) على المرصوفة؟",
236
+ "hint": "السهم (→) يعني خطوة لليمين على السطر، والسهم (↓) يعني خطوة للأسفل على العمود نظر الصفحة 16)."}
237
+ ]
 
 
238
  },
239
  {
240
+ "title": "الدرس الخامس — الأعداد من 0 إلى 999 (سباق الأرقام الكبيرة)",
241
  "text": """
242
+ مرحباً بك في عالم الأرقام الكبيرة! اليوم سنتعلم كيف نقرأ ونكتب الأعداد التي تتكون من 3 أرقام [Page 17].
243
+
244
+ عندما نرى عدداً مكتوباً على قميص عداء في السباق، مثل: (435):
245
+ - الرقم 5 يمثل الوحدات (و).
246
+ - الرقم 3 يمثل العشرات (ع).
247
+ - الرقم 4 يمثل المئات (م).
248
+
249
+ أولاً: كيف نقرأ هذا العدد الكبير؟
250
+ نبدأ دائماً بقراءة المئات أولاً، ثم نقفز لقراءة الوحدات، وأخيراً نقرأ العشرات:
251
+ - نقرأ 400: "أربعمائة".
252
+ - نقرأ 5: "وخمسة".
253
+ - نقرأ 30: "وثلاثون".
254
+ فيصبح العدد: "أربعمائة وخمسة وثلاثون".
255
 
256
+ ثانياً: انتبه للأفخاخ!
257
+ - العدد "سبعمائة وثلاثة" يُكتب بالأرقام: (703)، وليس (730) لأن العشرات صفر، وليس (307)!
258
+ - العدد الذي فيه 5 وحدات و 0 عشرات و 1 مئات هو: (105).
259
 
260
+ تعلمتُ: أكتب الأعداد بالحروف والكلمات من خلال تركيبها بانتظام ومراعاة قيمة كل رقم (وحدات، عشرات، مئات).
 
 
261
  """,
262
  "questions": [
263
+ {"q": "اكتب العدد (ثمانمائة وستة وخمسون) بالأرقام.",
264
+ "hint": "نكتب 8 في المئات، و6 في الوحدات، و5 في العشرات، فيصبح: 856 (انظر الصفحة 17)."},
265
+ {"q": "تخيل عدداً يملك 5 وحدات، و9 عشرات، و9 مئات. ما هو هذا العدد؟ وكيف نقرؤه؟",
266
+ "hint": "العدد هو 995، ونقرؤه: تسعمائة وخمسة وتسعون (انظر الصفحة 17)."}
267
+ ]
 
 
268
  },
269
  {
270
+ "title": "الدرس السادس — الجمع والطرح: العد بإضافة أو طرح 1 أو 10 أو 100",
271
  "text": """
272
+ مرحباً بك في لعبة الحساب السريع والأنماط العددية! [Page 18].
273
 
274
+ سنتعلم اليوم كيف نزيد أو ننقص الأرقام بذكاء كبير وفي ثوانٍ معدودة:
 
 
275
 
276
+ أولاً: إضافة أو طرح 1 (لعبة الوحدات)
277
+ عندما نزيد أو ننقص يتغير فقط رقم "الوحدات" في العدد:
278
+ - مثال للإضافة: 500 501 502...غير الرقم الأخير فقط).
279
+ - مثال للطرح: 500 ← 499 ← 498...
280
 
281
+ ثانياً: إضافة أو طرح 10 (لعبة العشرات)
282
+ عندما نزيد أو ننقص 10، يتغير فقط رقم "العشرات" في الوسط:
283
+ - مثال للطرح: 874 864 854... (لاحظ ��ن العشرات تنقص بـ 1 في كل خطوة: 7، 6، 5).
284
+ - مثال للإضافة: 365 + 10 = 375.
285
+
286
+ ثالثاً: إضافة أو طرح 100 (لعبة المئات)
287
+ عندما نزيد أو ننقص 100، يتغير فقط الرقم الأول من اليسار وهو "المئات":
288
+ - مثال للإضافة: 3 ← 103 ← 203 ← 303... (المئات تزيد بـ 1 في كل مرة).
289
+ - مثال للطرح: 904 - 100 = 804.
290
+
291
+ تعلمتُ: الحساب السريع والعد الشفهي بإضافة أو طرح 1 أو 10 أو 100 يسهل عليّ حل العمليات الصعبة في ذهني!
292
  """,
293
  "questions": [
294
+ {"q": "أكمل السلسلة التالية بذكاء: 432 ← 422 ← 412 ← ... ",
295
+ "hint": "نلاحظ أن مرتبة العشرات تنقص بـ 10 في كل مرة، إذن العدد الموالي هو: 402 (انظر الصفحة 18)."},
296
+ {"q": "احسب ذهنياً وبسرعة فائقة: 643 + 100.",
297
+ "hint": "نضيف 1 إلى منزلة المئات فقط (الرقم 6 يصبح 7)، والنتيجة هي: 743 نظر الصفحة 18)."},
298
+ {"q": "ما هو العدد المناسب للفراغ: ... + 100 = 320؟",
299
+ "hint": "نطرح 100 من الـ 320 (منزلة المئات تنقص بـ 1)، فيكون العدد هو: 220 (انظر الصفحة 18)."}
300
+ ]
301
  }
302
+
303
  ]
304
+
305
+
306
  LISTEN_SECONDS = 10 # 900 في بيئة الإنتاج (15 دقيقة)
307
  PASS_SCORE = 6
308