يتم إعطاؤك مقتطف الكود التالي:

```بيثون
def PrefixInternalContextKey(t: الهوية.CredentialsType، اللاحقة: str) -> str:
    #نص الدالة هنا
```

مهمتك هي إكمال تنفيذ وظيفة `PrefixInternalContextKey`. تأخذ الدالة معلمتين:
1. `t` (النوع: `identity.CredentialsType`): تعداد يمثل أنواعًا مختلفة من بيانات اعتماد الهوية.
2. `suffix` (النوع: `str`): سلسلة تمثل لاحقة ليتم إلحاقها بالبادئة.

يجب أن تقوم الدالة `PrefixInternalContextKey` بإرجاع سلسلة تم تشكيلها عن طريق سلسلة بادئة بناءً على قيمة `t` المعينة ومعلمة `suffix`.

يجب تحديد البادئة بناءً على تعداد `identity.CredentialsType` التالي:

```بيثون
نوع بيانات اعتماد الفئة (التعداد):
    اسم المستخدم = "اسم المستخدم"
    كلمة المرور = "كلمة المرور"
    البريد الإلكتروني = "البريد الإلكتروني"
    الهاتف = "الهاتف"
```

البادئات المتوقعة لقيم `t` المختلفة هي كما يلي:
- `CredentialsType.USERNAME`: "usr_"
- `CredentialsType.PASSWORD`: "pwd_"
- `CredentialsType.EMAIL`: "email_"
- `CredentialsType.PHONE`: "phn_"

على سبيل المثال، إذا كانت `t` هي `CredentialsType.USERNAME` و`suffix` هي "123"، فيجب أن تُرجع الدالة "usr_123".

تحتاج إلى تنفيذ الوظيفة لتلبية المتطلبات المذكورة أعلاه.
{"source": "argilla/DistiCoder-dpo-binarized", "kind": "synthetic", "evolved_from": null}