-(id)init {
    if (self = [super init]) {
        self.name = [[NSString alloc] init];
        self.type = [[NSString alloc] init];
        self.phoneNumber = [[NSString alloc]init];
        self.webAddress = [[NSString alloc] init];
        NSMutableArray *pricesArray = [[NSMutableArray alloc] init];
        NSMutableArray *poolsArray = [[NSMutableArray alloc] init];
        self.prices = pricesArray;
        self.pools = poolsArray;
        [pricesArray release];
        [poolsArray release];
        //Create the address dictionaries
        NSMutableDictionary *addressItems = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"", KAddressStreet1Key, @"", KAddressStreet2Key, @"", KAddressBoroughKey, @"", KAddressCityKey, @"", KAddressCountyKey, @"", KAddressPostCodeKey, @"" ,KAddressCountryKey, nil];
        //Add dictionary to the array to contain address values
        self.address = addressItems;
        [addressItems release];
    }
    return self;
}
I'm currently doing a massive round of debugging thanks to EXC_BAD_ACCESS errors.. grr.
Does the code above seem fine and logical for a class init method? Basically I'm getting the EXC_BAD_ACCESS errors when I release both the pools (mutable array and the dictionary).
 
     
     
    