ملخص
يختم هذا الدرس الوحدة الخامسة من المقرر، المخصّصة للجداول والأشكال. فهو يعيد بناء سلسلة المبادئ والآليات التي تمتد من أبسط جدول إلى رسم TikZ موضوع في شكل عائم، مبيّنًا في كل حلقة أي مبدأ يُستعمل وفي أي درس يثبت؛ ويضع ما تحقّق في موضعه من خطة المقرر، ويحدّد المسائل التي لم يُشَر إليها هنا إلا إشارة وتُركت للوحدات التالية؛ ويعيد في تقييمه الختامي مهارات التقييم الأوّلي؛ ويختم بستة تحدّيات، أصعب من مسائل الدروس، تقتضي الجمع بين عدة دروس: تنضيد جدول تقرير مختبري وفق لائحة كلية، وتشخيص مستند يُترجَم بلا تنبيه ويُظهر ستة عيوب، وتركيب شكل من صورة فوتوغرافية ومخطط مرسوم، وتوليد جدول من ملف بيانات، وإعادة رسم مخطط لا يصمد عند الانتقال إلى عمودين، واختيار بيئة ثلاثة جداول مختلفة.
أهداف التعلم
- أن يعيد بناء ترتيب آليات الوحدة، محدّدًا المبدأ الذي تستند إليه كل منها.
- أن يشرح لماذا تُترجَم عيوب كثيرة في الجداول والصور والعناصر العائمة بلا تنبيه، وأين يُبحث عن أثرها في الناتج.
- أن يميّز ما أثبتته الوحدة مما لم تفعل سوى الإشارة إليه وستبسطه الوحدات التالية.
- أن ينضّد جداول وأشكالًا تجمع أعدادًا مصفوفة وتعليقات وأسماء وإحالات وأشكالًا فرعية ورسومًا، وأن يتنبّأ بما يُنتجه مصدر يجمع بينها.
- أن يختار لكل جدول أو صورة أو رسم البيئة والقياس والموضع التي تصمد أمام تغيّرات المستند.
ما تحقّق في الوحدة
أرادت الوحدة أن تُقرأ بيانات البحث وصوره ورسومه بوضوح نصّه نفسه، وأن تُرقَّم ويُحال إليها كما يُحال إلى أقسامه ومعادلاته، وأن تجد موضعها في الصفحة دون أن يحدّده المؤلف بيده. وقد تحقّق ذلك استنادًا إلى ما عدّته المقدمة معلومًا من الوحدات السابقة: الإحالات، التي تتوقف على ما يسجّله الوسم؛ والمحاذاة في الوحدة السابقة، حيث يفتح كل \\ صفًّا ويفصل كل & خلية؛ والديباجة بأوامرها الخاصة، حيث تُتّخذ القرارات مرة واحدة. وبذلك يمكن أن يُقرأ الطريق الذي قُطع سلسلةً واحدة من خمسة أقسام.
جداول مقروءة
طبّق درس الجداول المقروءة مبدأ المحاذاة على النص: فـtabular يبني صفًّا لكل \\ وخلية بين كل زوج من &، بحرف عمود لكل خلية، والمجموع صندوق يضعه المحرّك كاملًا. ومن قاعدة العدّ استنتج نوعي أخطائه: الصاخب، «Extra alignment tab»، الذي يُشار إليه في السطر التالي إذا سقط \\، والصامت، أي الصف الأقل خلايا، الذي يقبله المحرّك. واستبدل بالشبكة خطوط booktabs الثلاثة، مع \cmidrule المقصوص و\addlinespace؛ وصفّ الأعداد بفاصلتها العشرية بعمود S من siunitx، الذي يحجز table-format فيه مكانًا يتجاوزه العدد الأعرض دون أثر سوى «Overfull \hbox» في السجل، والذي يطبع النقطة افتراضيًا ولا يأخذ علامة الكسر من babel، ويُنضَّد في المستند العربي من اليسار إلى اليمين داخل otherlanguage بالإنجليزية لئلا تنقلب أجزاء العدد؛ ونقل الوحدات إلى الرؤوس، بين قوسين معقوفين في أعمدة S؛ ونضّد نصًّا غير مضبوط الطرف بـ\raggedright\arraybackslash، الذي يحاذي في الفقرة العربية إلى بداية السطر، أي إلى اليمين.
الجداول المعقدة والطويلة
مدّ درس الجداول المعقدة والطويلة قاعدة العدّ إلى \multicolumn، الذي يشغل مكان عدة خلايا، وبيّن أن & أوّليًّا منسيًّا يزيح رأسًا مجمَّعًا دون أن يلاحظ المحرّك، لأن الخطوط الجزئية تتوقف على أرقامها وحدها. وأعطى الجداول عرض السطر بـtabularx أو بـtabular* و\extracolsep{\fill}، واستبعد \resizebox، الذي يغيّر حجم الحروف؛ ووزّع الجداول الطويلة على عدة صفحات بـlongtable، الذي يكرّر رؤوسه، ويرقّم مرة واحدة إذا حمل الاستمرارُ \caption[]، ويحتاج إلى مرّة ترجمة أخرى ليثبّت عروضه، ويفقد صفوفًا إذا أُحيط بـtable؛ وولّد الجداول من مصدر واحد، هو ملف البيانات، بـcsvsimple وpgfplotstable، منبّهًا إلى أن filecontents* بلا overwrite لا يعيد كتابة الملف.
الصور في المستند
أثبت درس الصور في المستند أن \includegraphics يُنتج صندوقًا يضعه المحرّك في السطر كأنه حرف كبير، واستنتج من ذلك المسافة البادئة التي تُخرج الصورة عن عرض السطر، وطريقة توسيطها، وطريقة وضع صورتين متجاورتين. وعبّر عن المقاسات نسبةً إلى \linewidth، الذي يتكيّف مع الموضع؛ وبيّن أن العرض والارتفاع معًا بلا keepaspectratio يشوّهان بلا تنبيه، وأن الخيارات تُطبَّق بالترتيب الذي كُتبت به؛ وميّز الرسوم المتجهية، التي تُصدَّر بصيغة PDF، من الصور الفوتوغرافية، التي لا يتحقّق المحرّك من دقّتها؛ ودرس البحث عن الملفات: بلا امتداد يُقدَّم PDF على PNG بلا تنبيه، و\graphicspath يتطلّب أقواسًا معقوفة مزدوجة.
الأشكال والجداول العائمة
استنتج درس الأشكال والجداول العائمة العومَ من الصندوق الذي لا يتجزّأ: ما لا ينقسم ولا يتّسع له المكان يُنقل إلى حيث يتّسع، ولذلك يُحال إليه برقمه. وشرح المحدِّدات بوصفها مواضع مسموحًا بها، وتوسيع [h] إلى [ht]، وفراغات [H]، والشكل الذي لا موضع ممكنًا له فيحبس الأشكال الأخرى؛ ونضّد التعليق، الذي يرقّم ويسجّل في القائمة ويوضع فوق الجداول بمسافة الحزمة caption؛ وغيّر عنوان القائمة من «قائمة الجداول» إلى «فهرس الجداول» بـ\setlocalecaption، لأن babel يُبطل \renewcommand، وأصلح cleveref بـ\crefname؛ وتحقّق من أن caption يفضح الوسم الموضوع قبل التعليق؛ ونضّد أشكالًا فرعية، وأشكالًا مستقلة داخل figure واحد، وحواشي جدول بـthreeparttable، بعد أن بيّن أن \footnote يفقد نصّه في العنصر العائم.
الرسم باستخدام TikZ
انتقل درس الرسم باستخدام TikZ من الصورة التي تُدرَج إلى الصورة التي تُكتب. وبدأ من الديباجة: فالوحدة العربية في babel لا تمسّ الرموز التي يستعملها TikZ، لكن وحدات لغات كثيرة تجعل بعض الرموز نشطة (فالإسبانية تنشّط >، وبلا \usetikzlibrary{babel} يُحدث أول سهم سلسلة من الأخطاء)، ولذلك تُحمَّل مكتبة babel عادةً؛ أما ما يحتاج إليه المستند العربي حقًّا فهو الخيار layout=graphics، الذي يُبقي نصوص العُقد في أطرها. وتناول الإحداثيات الديكارتية والقطبية والنسبية، والفرق بين + و++؛ والمسارات وخيارات الخط ورؤوس السهام في arrows.meta؛ والعُقد ذات الأسماء والمراسي، التي تُوضع بعضها نسبةً إلى بعض بـpositioning؛ والأنماط في \tikzset والتكرار بـ\foreach؛ ومخططات من تخصصات مختلفة، والتمثيل البياني لدالة يُقاس جيبها بالدرجات بلا تنبيه، وpgfplots؛ وختم بوضع الرسم في شكل عائم والمقارنة بين ثلاث طرائق لتصغيره.
يجمع الشكل التالي الأقسام الخمسة في سلسلة واحدة. كل عقدة في العمود آلية أو قاعدة، مرقّمة بحسب ترتيب استناد بعضها إلى بعض، وموصولة بقوس بالحلقات السابقة التي تستعملها؛ وحولها تطفو الدعائم، أي المبادئ التي تلجأ إليها السلسلة مرة بعد مرة، وكل دعامة موصولة بخط متصل بالحلقات التي تستند إليها، وبخط منقّط بالحلقة التي تثبت فيها، إلا ما ثبت في وحدات سابقة فيُرسم حلقةً مفرغة. وبالنقر على دعامة تبرز كل الحلقات التي تستعملها، وتحيل كل حلقة إلى الدرس الذي تُدرَس فيه.
دعامات السلسلة
- Aما يسجّله الوسم. يسجّل الوسم آخر رقم أُسند قبله، داخل بيئته، دون أن يعرف بماذا هو مربوط. ثبت في الوحدة الثالثة. يُقبل دون برهان في هذه الوحدة.
- Bالمحاذاة جدول. تبني بيئة المحاذاة صفًّا لكل
\\وخلية لكل مقطع بين علامتي&، حتى لو بقي الصف ناقصًا. ثبت في الوحدة السابقة. يُقبل دون برهان في هذه الوحدة. - Cالقرار مرة واحدة. ما يُقرَّر في موضع واحد (أمر أو تنسيق في الديباجة، أو نمط، أو ملف بيانات) يتغيّر في المستند كله إذا غُيّر هناك؛ وما يُنسخ باليد يكفّ عن التوافق. ثبت في الوحدات السابقة. يُقبل دون برهان في هذه الوحدة.
- Dمرّات الترجمة. يدوّن المحرّك في الملفات المساعدة ما يحسبه في مرّة، ويستعمله في المرّة التالية. ثبت في الوحدة الأولى. يُقبل دون برهان في هذه الوحدة.
- Eما يفعله babel بالعربية. تعيّن الوحدة العربية أسماءها («شكل» و«جدول» و«قائمة الجداول») عند بدء المستند، بعد قراءة الديباجة كلها؛ ومع
bidi=basicيجري المستند من اليمين إلى اليسار، ويمدّlayout=tabularهذا الاتجاه إلى أعمدة الجداول، ويُبقيlayout=graphicsالرسوم سليمة؛ ولا تحوّل الوحدة النقطة العشرية إلى فاصلة ولا تنشّط رموزًا، كما تفعل وحدات أخرى (الإسبانية مع<و>). ثبت بعضه في الوحدة السابقة. يُقبل دون برهان في هذه الوحدة. - Fالصندوق لا يتجزّأ. الجدول أو الصورة أو الرسم صندوق يضعه المحرّك كاملًا، كأنه حرف كبير، ولا ينقطع بين صفحتين. تثبت في: 1. الصفوف والخلايا.
- Gالصحيح لا يُنبَّه عليه. لا ينبّه المحرّك إلا على ما لا يستطيع تنضيده؛ والمصدر الصحيح الذي لا يقول ما أراده المؤلف يُترجَم بلا تنبيه، ولا يظهر العيب إلا في الناتج. تثبت في: 1. الصفوف والخلايا.
- Hالعوم والإحالة. ما لا ينقسم ولا يتّسع له الموضع الذي كُتب فيه يُنقل إلى حيث يتّسع؛ ولذلك يُحال إلى العنصر العائم برقمه، لا بموضعه أبدًا. تثبت في: 13. لماذا تعوم.
المقطع 1 جداول مقروءة
- الاختيار بين الجدول والقائمة والشكل بحسب الطريقة التي ستُستشار بها البيانات.
- تنضيد جدول بـ
tabularوخطوط booktabs، بلا شبكة. - صفّ الأعداد بالفاصلة العشرية بالعمود
S. - تشخيص أخطاء الجدول، ومنها التي لا تُنبَّه عليها.
الصفوف والخلايا. ينقل
tabularقاعدة المحاذاة إلى النص: حرف لكل عمود، و&بين الخلايا، و\\في نهاية الصف؛ والصف الأكثر خلايا يعطي «Extra alignment tab»، في السطر التالي إذا سقط\\، والأقل خلايا صحيح، والمجموع صندوق لا يتجزّأ.تستند إلى: B (المحاذاة جدول), F (الصندوق لا يتجزّأ), G (الصحيح لا يُنبَّه عليه). يُبرهن في: جداول مقروءة.
خطوط بدل الشبكة. لا خطوط رأسية ولا مزدوجة:
\topruleو\midruleو\bottomrule، و\cmidruleبقصّاته، و\addlinespace؛ و\hlineالمخلوط بها لا يُنبَّه عليه ويترك نظامين من الخطوط.تستعمل: 1. الصفوف والخلايا. تستند إلى: G (الصحيح لا يُنبَّه عليه). يُبرهن في: جداول مقروءة.
الأعداد بفاصلتها. يصفّ العمود
Sالأعداد بفاصلتها؛ ويحجزtable-formatالمكان، فيبرز العدد الأعرض ولا يترك إلا «Overfull\hbox» بلا اسم؛ ولا يأخذ siunitx علامة الكسر من babel، ويُنضَّد عموده في المستند العربي داخلotherlanguageبالإنجليزية؛ والفاصلة التي تفصل الآلاف تُقرأ فاصلةً عشرية.تستعمل: 1. الصفوف والخلايا. تستند إلى: E (ما يفعله babel بالعربية), G (الصحيح لا يُنبَّه عليه), C (القرار مرة واحدة). يُبرهن في: جداول مقروءة.
الرؤوس والنص. تُكتب الوحدة مرة واحدة في الرأس، الذي يُحاط في عمود
Sبقوسين معقوفين؛ و\makecellيقسم الرأس الطويل؛ وعمود الفقرة غير المضبوطة الطرف يحمل\raggedright\arraybackslash، وبلا\arraybackslashيظهر «Misplaced\noalign».تستعمل: 3. الأعداد بفاصلتها, 2. خطوط بدل الشبكة. تستند إلى: B (المحاذاة جدول). يُبرهن في: جداول مقروءة.
المقطع 2 الجداول المعقدة والطويلة
- تجميع الأعمدة وعدّ خلايا كل صف.
- إعطاء الجدول عرض السطر دون تحجيمه.
- توزيع جدول طويل على عدة صفحات.
- توليد جدول من ملف بياناته.
خلايا تمتد على أعمدة. يشغل
\multicolumnمكان عدة خلايا، ويجب ألا يتجاوز عدُّ الصف مواصفةَ الجدول؛ و&الأوّلي المنسي يزيح المجموعة بلا تنبيه، لأن\cmidruleيتوقف على أرقامه وحدها؛ والعرض الزائد يذهب إلى آخر أعمدة المجموعة.تستعمل: 1. الصفوف والخلايا, 2. خطوط بدل الشبكة. تستند إلى: B (المحاذاة جدول), G (الصحيح لا يُنبَّه عليه). يُبرهن في: الجداول المعقدة والطويلة.
عرض السطر. يوسّع tabularx أعمدته
X، أو عمودLمعرَّفًا بـ\newcolumntype؛ ويوزّعtabular*البياض بين الأعمدة بـ\extracolsep{\fill}؛ ويُستبعد\resizebox، لأنه يعطي كل جدول حجم حروف آخر.تستعمل: 4. الرؤوس والنص. تستند إلى: F (الصندوق لا يتجزّأ), C (القرار مرة واحدة). يُبرهن في: الجداول المعقدة والطويلة.
جداول متعددة الصفحات. ينقطع longtable ويكرّر رؤوسه بـ
\endfirstheadو\endhead؛ ويرقّم بـ\captionويستمرّ بـ\caption[]؛ ويدوّن عروضه ويطلب مرّة ترجمة أخرى؛ وداخلtableيعود صندوقًا ويفقد صفوفًا.تستعمل: 5. خلايا تمتد على أعمدة. تستند إلى: F (الصندوق لا يتجزّأ), D (مرّات الترجمة). يُبرهن في: الجداول المعقدة والطويلة.
جداول من البيانات. للبيانات مصدر واحد هو الملف: ينسخ csvsimple نصّه، وينسّق pgfplotstable أعداده؛ و
filecontents*بلاoverwriteلا يعيد كتابة ملف موجود ويكتفي بالإخبار بذلك.تستعمل: 3. الأعداد بفاصلتها, 7. جداول متعددة الصفحات. تستند إلى: C (القرار مرة واحدة), G (الصحيح لا يُنبَّه عليه). يُبرهن في: الجداول المعقدة والطويلة.
المقطع 3 الصور في المستند
- تحديد مقاس الصورة نسبةً إلى السطر والتنبؤ بأبعادها.
- اختيار صيغة كل صورة والتحقّق من دقّتها.
- تسمية ملفات الصور ووضعها والعثور عليها.
- وضع صورة في السطر كأنها حرف.
الصورة حرف كبير. يُنتج
\includegraphicsصندوقًا قائمًا على خط القاعدة: بعد المسافة البادئة تبرز صورة عرضهاwidth=\linewidth؛ ولتوسيطها يوسَّط السطر، وتتجاور صورتان إذا اتّسع لهما.تستند إلى: F (الصندوق لا يتجزّأ). يُبرهن في: الصور في المستند.
المقاس وترتيب الخيارات. المقاسات النسبية إلى
\linewidthتتكيّف مع الموضع؛ والعرض والارتفاع بلاkeepaspectratioيشوّهان بلا تنبيه؛ والخيارات تُطبَّق بالترتيب الذي كُتبت به؛ وtrimيتطلّبclip، والصفحة غير الموجودة توقف الترجمة.تستعمل: 9. الصورة حرف كبير. تستند إلى: G (الصحيح لا يُنبَّه عليه). يُبرهن في: الصور في المستند.
الصيغ والدقّة. الرسوم البيانية متجهية وتُصدَّر بصيغة PDF بمقاس الاستعمال؛ والصور الفوتوغرافية نقطية وتحتاج إلى نحو 300 نقطة في البوصة، لا يتحقّق منها المحرّك؛ ويُحوَّل SVG مسبقًا، ويحوّل graphicx ملفات EPS.
تستعمل: 10. المقاس وترتيب الخيارات. تستند إلى: G (الصحيح لا يُنبَّه عليه). يُبرهن في: الصور في المستند.
الأسماء والمسارات. بلا امتداد يجرّب المحرّك ترتيبًا ثابتًا ويستعمل PDF قبل PNG بلا تنبيه؛ و
\graphicspathيطلب أقواسًا مزدوجة، ومع المفردة يصير كل حرف مجلّدًا؛ ويُظهر نمط المسوّدة أي ملف استُعمل.تستعمل: 11. الصيغ والدقّة. تستند إلى: G (الصحيح لا يُنبَّه عليه). يُبرهن في: الصور في المستند.
المقطع 4 الأشكال والجداول العائمة
- شرح سبب عوم الشكل والإحالة إليه برقمه.
- توجيه موضع العناصر العائمة وحصره.
- إعطاء كل عنصر عائم تعليقه واسمه ووسمه.
- تنضيد أشكال فرعية وحواشٍ داخل جدول.
لماذا تعوم. ينقل
figureوtableالصندوق إلى حيث يتّسع، ويُحال إليه برقمه؛ والحروف مواضع مسموح بها، و[h]لا يتّسع إلا إلى[ht]، و[H]يترك فراغات، والشكل الذي لا موضع ممكنًا له يحبس ما كان من نوعه.تستعمل: 1. الصفوف والخلايا, 9. الصورة حرف كبير. تستند إلى: F (الصندوق لا يتجزّأ), H (العوم والإحالة). يُبرهن في: الأشكال والجداول العائمة.
التعليق. يرقّم
\captionوينضّد ويسجّل في القائمة، التي تحتاج إلى مرّة ترجمة أخرى، ويقبل عنوانًا قصيرًا؛ ويوضع فوق الجداول وتحت الأشكال، وتحدّد الحزمة caption مسافته وتنسيقه للمستند كله.تستعمل: 13. لماذا تعوم. تستند إلى: D (مرّات الترجمة), C (القرار مرة واحدة). يُبرهن في: الأشكال والجداول العائمة.
الاسم والإحالة. يجعل
\setlocalecaption{arabic}{listtable}{فهرس الجداول}عنوان القائمة «فهرس الجداول»، ويُبطل babel\renewcommand{\listtablename}؛ ويحتاج cleveref، الذي لا خيار عربيًّا له، إلى\crefname{table}{الجدول}{الجداول}؛ ويوضع الوسم بعد التعليق، ومع caption يعطي الوسم الموضوع في غير مكانه تنبيهًا وعلامتي استفهام.تستعمل: 14. التعليق. تستند إلى: A (ما يسجّله الوسم), E (ما يفعله babel بالعربية). يُبرهن في: الأشكال والجداول العائمة.
الأشكال الفرعية والحواشي. يعطي subcaption أجزاء الشكل حروفًا، ويسمّيها cleveref «الشكل 1b»؛ والأشكال المستقلة توضع في minipage داخل
figureواحد، لا العكس أبدًا؛ و\footnoteفي العنصر العائم يفقد نصّه بلا تنبيه، ويربط threeparttable الحاشية بالجدول.تستعمل: 15. الاسم والإحالة, 9. الصورة حرف كبير. تستند إلى: H (العوم والإحالة), G (الصحيح لا يُنبَّه عليه). يُبرهن في: الأشكال والجداول العائمة.
المقطع 5 الرسم باستخدام TikZ
- إعداد ديباجة مستند عربي للرسم.
- تحديد النقاط بإحداثيات مطلقة وقطبية ونسبية.
- تركيب مخططات من عُقد مسمّاة بأنماط خاصة.
- وضع الرسم في شكل عائم وتصغيره دون أن تضيع حروف النص.
مكتبة babel. في المستند العربي تعمل السهام بلا هذه المكتبة، لكن الوحدات التي تنشّط الرموز تكسرها: ففي الإسبانية يُحدث أول سهم سلسلة أخطاء بأي ترتيب تحميل؛ و
\usetikzlibrary{babel}يصلح ذلك ويُحمَّل عادةً؛ ويحتاج المستند العربي فوق ذلك إلىlayout=graphics؛ وبلا arrows.meta أو بلا positioning تكون الرسائل «Unknown arrow tip kind» و«Unknown function of».تستند إلى: E (ما يفعله babel بالعربية). يُبرهن في: الرسم باستخدام TikZ.
الإحداثيات والمسارات. الإحداثيات ديكارتية أو قطبية أو نسبية:
++ينقل نقطة المرجع و+لا ينقلها؛ والفاصلة المنقوطة المنسية يُشار إليها في السطر التالي، وsin(\x)يقيس الزاوية بالدرجات بلا تنبيه.تستعمل: 17. مكتبة babel. تستند إلى: G (الصحيح لا يُنبَّه عليه). يُبرهن في: الرسم باستخدام TikZ.
العُقد والأنماط. العقدة صندوق له اسم ومراسٍ؛ ويضعه positioning نسبةً إلى غيره بالمسافة بين الحواف، فيعيد المخطط ترتيب نفسه؛ و
\tikzsetيحدّد الأنماط و\foreachيكرّر.تستعمل: 18. الإحداثيات والمسارات. تستند إلى: F (الصندوق لا يتجزّأ), C (القرار مرة واحدة). يُبرهن في: الرسم باستخدام TikZ.
الرسم في الشكل. الرسم صندوق يوضع في
figureمع تعليقه ووسمه؛ وscaleيحفظ الحروف، وtransform shapeيصغّرها، و\resizeboxيصغّر كل شيء؛ وpgfplots معcompatيطبع النقطة العشرية، ولا يغيّر babel أعداده.تستعمل: 19. العُقد والأنماط, 15. الاسم والإحالة, 6. عرض السطر. تستند إلى: H (العوم والإحالة), E (ما يفعله babel بالعربية). يُبرهن في: الرسم باستخدام TikZ.
نحو المراجع. تقف السلسلة حيث صارت الجداول والصور والرسوم منضّدة ومرقّمة ومُحالًا إليها: أما مصدر البيانات والصور المأخوذة من الغير، الذي صُرّح به هنا باليد في سطر نسبة، فسيُستشهد به في الوحدة التالية من قاعدة مراجع، بأسلوب كل تخصص.
جارٍ تحميل المحتوى…