I have a problem with this code :

```
__strong NSString *yourString = @"Your String"; 
__weak NSString *myString = yourString;
yourString = nil;
__unsafe_unretained NSString *theirString = myString;
NSLog(@"%p %@", yourString, yourString);
NSLog(@"%p %@", myString, myString);
NSLog(@"%p %@", theirString, theirString);

```

I'm expecting all pointers to be `nil` at this time, but they are not and I don't understand why.
The first (strong) pointer is `nil` but the other two are not. Why is that?