Index: trunk/src/shared/ByteBuffer.h
===================================================================
--- trunk/src/shared/ByteBuffer.h (revision 44)
+++ trunk/src/shared/ByteBuffer.h (revision 78)
@@ -202,5 +202,5 @@
         }
 
-        uint8 operator[](size_t pos)
+        uint8 operator[](size_t pos) const
         {
             return read<uint8>(pos);
@@ -310,5 +310,5 @@
             memcpy(&_storage[pos], src, cnt);
         }
-        void print_storage()
+        void print_storage() const
         {
             if(!sLog.IsOutDebug())                          // optimize disabled debug output
@@ -321,5 +321,5 @@
         }
 
-        void textlike()
+        void textlike() const
         {
             if(!sLog.IsOutDebug())                          // optimize disabled debug output
@@ -332,5 +332,5 @@
         }
 
-        void hexlike()
+        void hexlike() const
         {
             if(!sLog.IsOutDebug())                          // optimize disabled debug output
Index: trunk/src/shared/Database/DBCfmt.cpp
===================================================================
--- trunk/src/shared/Database/DBCfmt.cpp (revision 44)
+++ trunk/src/shared/Database/DBCfmt.cpp (revision 78)
@@ -28,5 +28,5 @@
 //const char ChrClassesEntryfmt[]="nxixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix";
 const char ChrClassesEntryfmt[]="nxixssssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix";
-const char ChrRacesEntryfmt[]="nxixiixxixxxxissssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
+const char ChrRacesEntryfmt[]="nxixiixxixxxxissssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxi";
 const char CreatureDisplayInfofmt[]="nxxxfxxxxxxxxx";
 const char CreatureFamilyfmt[]="nfifiiiissssssssssssssssxx";
Index: trunk/src/shared/Database/DBCStores.cpp
===================================================================
--- trunk/src/shared/Database/DBCStores.cpp (revision 44)
+++ trunk/src/shared/Database/DBCStores.cpp (revision 78)
@@ -555,5 +555,13 @@
 
     MapEntry const* mapEntry = sMapStore.LookupEntry(mapid);
-    return (!mapEntry || !mapEntry->IsExpansionMap()) ? CONTENT_1_60 : CONTENT_61_70;
+    if(!mapEntry)
+        return CONTENT_1_60;
+
+    switch(mapEntry->Expansion())
+    {
+        default: return CONTENT_1_60;
+        case 1:  return CONTENT_61_70;
+        case 2:  return CONTENT_71_80;
+    }
 }
 
Index: trunk/src/shared/Database/DBCStructure.h
===================================================================
--- trunk/src/shared/Database/DBCStructure.h (revision 44)
+++ trunk/src/shared/Database/DBCStructure.h (revision 78)
@@ -180,5 +180,5 @@
                                                             // 64 string flags, unused
                                                             // 65-67 unused
-    //uint32    addon                                       // 68 (0 - original race, 1 - tbc addon, ...) unused
+    uint32    addon;                                         // 68 (0 - original race, 1 - tbc addon, ...)
 };
 
@@ -474,5 +474,5 @@
 
     // Helpers
-    bool IsExpansionMap() const { return addon != 0; }
+    uint32 Expansion() const { return addon; }
 
 
Index: trunk/src/shared/Database/DBCStores.h
===================================================================
--- trunk/src/shared/Database/DBCStores.h (revision 44)
+++ trunk/src/shared/Database/DBCStores.h (revision 78)
@@ -45,5 +45,6 @@
 {
     CONTENT_1_60 = 0,
-    CONTENT_61_70
+    CONTENT_61_70,
+    CONTENT_71_80
 };
 ContentLevels GetContentLevelsForMapAndZone(uint32 mapid, uint32 zoneId);
