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