How does coercion work?
===

I just created a normal MyClass and defined an instance variable 

    @interface MyMFMessageComposeViewController : NSObject
    {
        NSString *body;
        NSArray * recipients; 
    }
    
    @property (readwrite, strong) NSString *body;
    @property (readwrite, strong) NSArray * recipients; 
    @end


then I coreced to `MFMessageComposeViewController`.

and it worked - surprisingly - for some reason the class variables got transferred correcty.

**How does this work? Does the runtime really search for class variable NAMES to find the appropriate class variables?**

I thought coercion would just be an overlay of memory.

Many thanks for your insight?