changed from id to NSDictionary