@MarshalsPointer
 public static CNInstantMessageAddressPropertyKey toObject(
     Class<CNInstantMessageAddressPropertyKey> cls, long handle, long flags) {
   NSString o = (NSString) NSObject.Marshaler.toObject(NSString.class, handle, flags);
   if (o == null) {
     return null;
   }
   return CNInstantMessageAddressPropertyKey.valueOf(o);
 }
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<CNInstantMessageAddressPropertyKey> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSString> o =
       (NSArray<NSString>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CNInstantMessageAddressPropertyKey> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(CNInstantMessageAddressPropertyKey.valueOf(o.get(i)));
   }
   return list;
 }