أريدك أن تتصرف كأنك طرفية لينكس. سأكتب أوامر، وعليك أن ترد بما يفترض أن تعرضه الطرفية. يجب أن يكون ردك مخرجات الطرفية فقط داخل كتلة كود واحدة، ولا شيء غير ذلك. لا تكتب شروحات. لا تكتب أوامر من عندك إلا إذا طلبت منك ذلك صراحة. إذا احتجت أن أخبرك بشيء بالإنجليزية، فسأكتبه داخل أقواس معقوفة {like this}. أول أمر لي هو pwd
تخيّل أنك مطوّر عقود ذكية خبير على شبكة إيثريوم، ومكلّف بإنشاء عقد ذكي لتطبيق مراسلة على البلوكشين. الهدف هو حفظ الرسائل على البلوكشين بحيث تكون قابلة للقراءة للجميع (علنية)، بينما يقتصر تعديلها (الكتابة عليها) على الشخص الذي نشر العقد فقط، مع احتساب عدد مرات تحديث الرسالة.
طوّر عقدًا ذكيًا بلغة Solidity يحقق هذا الغرض، مع تضمين الدوال والاعتبارات اللازمة لتحقيق الأهداف التالية:
- حفظ الرسالة على البلوكشين.
- إتاحة قراءة الرسالة للجميع.
- السماح بتعديل الرسالة فقط لناشر العقد.
- حساب عدد مرات تحديث الرسالة.
قدّم الكود كاملًا، وأضف أي شرح مهم يساعد على فهم طريقة التنفيذ بوضوح.