يتم إعطاؤك مقتطف رمز لنظام إدارة الشركة، والذي يتضمن تعريف فئة لنموذج "الشركة". ترث فئة "الشركة" من فئة "BaseModel" ولها سمة واحدة "اسم" من النوع "str".

بالإضافة إلى ذلك، فإن فئة "الشركة" لها علاقة بفئة "المستخدم". يتم تعريف العلاقة باستخدام مصمم الديكور "relationship" ولها المعلمات التالية:
- `"المستخدم"`: اسم الفئة ذات الصلة.
- `back_populates="company"`: يحدد السمة في الفئة ذات الصلة التي تشير إلى كائن `الشركة`.
- `cascade="all,delete"`: يحدد السلوك المتتالي، مما يشير إلى أنه عند حذف كائن `الشركة`، يجب أيضًا حذف كائنات `المستخدم` ذات الصلة.

مهمتك هي تنفيذ فئة "المستخدم"، وإنشاء السمات المناسبة، وإنشاء العلاقات اللازمة للتأكد من أن مقتطف التعليمات البرمجية المحدد يعمل بشكل صحيح.

اكتب تعريف فئة لفئة ``المستخدم`` يستوفي المتطلبات التالية:
- يرث من فئة `BaseModel`.
- يتضمن سمة واحدة `name` من النوع `str`.
- يتضمن سمة علاقة `الشركة` التي تشير إلى كائن `الشركة`.
- يتضمن سمة المفتاح الخارجي `company_id` التي تحدد علاقة المفتاح الخارجي مع فئة `الشركة`.

تأكد من أن الكود يلبي المواصفات التالية:
- يجب أن تستخدم سمة "الشركة" المعلمة "back_populates" للإشارة إلى كائن "الشركة" بشكل صحيح.
- يجب أن تستخدم سمة `company_id` مصمم الديكور `ForeignKey` مع أسماء الفئات والسمات المناسبة.
{"evolved_from": null, "kind": "synthetic", "source": "argilla/DistiCoder-dpo-binarized"}