I am facing a very weird issue. I create an object and I add it to a NSMutableArray but when I try to read it after I insert it, some subclasses of the object change to some weird classes like 

> 
> PINGIFAnimatedImageManager
> 
> 
> 

Here is the code I use to create the object and insert it to the NSMutableArray:

```
CustomContentGridRow *row = [[CustomContentGridRow alloc]init];
row.child1 = [dataManager getMapLocation]; // This is the MapLocation object that will change to this weird PINGIFAnimatedImageManager
row.useFullWidth=1;
row.index=0;
[arrCustomChilds addObject:row];

```

This is the CustomContentGridRow class:

```
@interface CustomContentGridRow : NSObject

@property (nonatomic, assign) MapLocation *child1;
@property (nonatomic, assign) MapLocation *child2;
@property (nonatomic, assign) int useFullWidth;
@property (nonatomic, assign) int index;

@end

```

So when I put a breakpoint at this line `[arrCustomChilds addObject:hotelRow];`, when I read the `row` object I get the expected results. But when I place a breakpoint after the above code to read the `arrCustomChilds` the class of child1 changes to some weird classes. Also, sometimes it won't change to another class but it will give nil values. 

Any idea why this is happening?