public override bool IsAssignableFrom(PLanguageType otherType) { if (otherType is PermissionType permission) { EventSet eventSet1 = new EventSet(); EventSet eventSet2 = new EventSet(); eventSet1.AddEvents(otherType.AllowedPermissions.Value); eventSet2.AddEvents(AllowedPermissions.Value); return eventSet1.IsSame(eventSet2); } return false; }