fixed the internal inconsistency error by allocating sub dictionaries as nsmutabledictionaries