Cargando el estado de un Singleton desde NSKeyedArchiver

Tengo una clase que he hecho en un singleton y puedo guardar su estado usando un NSKeyedArchiver, pero no puedo envolver mi cabeza tirando de su estado.

En la función que realiza la carga tengo

Venue *venue = [Venue sharedVenue];
NSData *data = [[NSMutableData alloc] initWithContentsOfFile:[self dataFilePath]];
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
venue = [unarchiver decodeObjectForKey:@"Venue"];
[unarchiver finishDecoding];

Con este código, ¿qué devuelve decodeObjectForKey? Realmente no puede ser otra instancia de Venue y no se carga en ninguno de los valores guardados. Antes de convertirlo a Singleton, el guardado y la carga funcionaban bien.

Respuestas a la pregunta(2)

Su respuesta a la pregunta