empty
    {{ size={($T1*)EndX - ($T1*)BeginX} }}
    
      - ($T1*)EndX - ($T1*)BeginX
- ($T1*)CapacityX - ($T1*)BeginX($T1*)EndX - ($T1*)BeginX
        ($T1*)BeginX
      
    
  
  
  
    
    {(($T1*)BeginX)[0]}{*this,view(elt1)}
    
    , {(($T1*)BeginX)[1]}{*this,view(elt2)}
    
    , {(($T1*)BeginX)[2]}{*this,view(elt3)}
    
    , {(($T1*)BeginX)[2]}{*this,view(elt4)}
    
    , /* {(($T1*)EndX - ($T1*)BeginX) - 4} more*/ 
    empty
    {{{*this,view(elt0)}}}
- ($T1*)EndX - ($T1*)BeginX
- ($T1*)CapacityX - ($T1*)BeginX($T1*)EndX - ($T1*)BeginX
        ($T1*)BeginX
      
    
  
  
    empty
    {{ size={Length} }}
- LengthLength
        Data
      
    
  
  
    {(const char*)BeginX,[(char*)EndX - (char*)BeginX] na}
    (const char*)BeginX,[(char*)EndX - (char*)BeginX]
- (char*)EndX - (char*)BeginX
- (char*)CapacityX - (char*)BeginX(char*)EndX - (char*)BeginX
        (char*)BeginX
      
    
  
  
    {Data,[Length]s}
    Data,[Length]s
- LengthLength
        Data
      
    
  
  
    {IntMask}: {($T1)(Value & PointerBitMask)} [{($T3)((Value >> IntShift) & IntMask)}]
- ($T1)(Value & PointerBitMask)
- ($T3)((Value >> IntShift) & IntMask){"$T1", s8b}: {($T1)(Val.Value & Val.PointerBitMask)}
    {"$T2", s8b}: {($T2)(Val.Value & Val.PointerBitMask)}
    
      ($T1)(Val.Value & Val.PointerBitMask)
      ($T2)(Val.Value & Val.PointerBitMask)
    
  
  
    {"$T1", s8b}: {($T1)((Val.Val.Value >> 2) << 2)}
    {"$T2", s8b}: {($T2)((Val.Val.Value >> 2) << 2)}
    {"$T3", s8b}: {($T3)((Val.Val.Value >> 2) << 2)}
    
      ($T1)((Val.Val.Value >> 2) << 2)
      ($T2)((Val.Val.Value >> 2) << 2)
      ($T3)((Val.Val.Value >> 2) << 2)
    
  
  
    {"$T1", s8b}: {($T1)((Val.Val.Value >> 2) << 2)}
    {"$T2", s8b}: {($T2)((Val.Val.Value >> 2) << 2)}
    {"$T3", s8b}: {($T3)((Val.Val.Value >> 2) << 2)}
    {"$T4", s8b}: {($T4)((Val.Val.Value >> 2) << 2)}
    
      ($T1)((Val.Val.Value >> 2) << 2)
      ($T2)((Val.Val.Value >> 2) << 2)
      ($T3)((Val.Val.Value >> 2) << 2)
      ($T4)((Val.Val.Value >> 2) << 2)
    
  
  
    {{ empty }}
    {{ head={Head} }}
    
      
        Head
        Next
        this
      
    
  
  
    empty
    RefPtr [1 ref] {*Obj}
    RefPtr [{Obj->ref_cnt} refs] {*Obj}
- Obj->ref_cntObj
    
  
  
    {{ [Small Mode] size={NumElements}, capacity={CurArraySize} }}
    {{ [Big Mode] size={NumElements}, capacity={CurArraySize} }}
- NumElements
- CurArraySizeCurArraySize
        ($T1*)CurArray
      
    
  
  
    empty
    {{ size={NumEntries}, buckets={NumBuckets} }}
- NumEntries
- NumBucketsNumBuckets
        Buckets
      
    
  
  
    {{ size={NumItems}, buckets={NumBuckets} }}
- NumItems
- NumBucketsNumBuckets
        (MapEntryTy**)TheTable
      
    
  
  
    empty
    ({this+1,s}, {second})
- this+1,s
- second{Data}
  
  
  
    empty
    {*(($T1 *)(unsigned char *)storage.buffer)}
- *(($T1 *)(unsigned char *)storage.buffer){{little endian value = {*(($T1*)(unsigned char *)Value.buffer)} }}
- (unsigned char *)Value.buffer,1
- (unsigned char *)Value.buffer,2
- (unsigned char *)Value.buffer,4
- (unsigned char *)Value.buffer,8{{ big endian value = {*(unsigned char *)Value.buffer} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 8) 
                                                                    | ($T1)(*((unsigned char *)Value.buffer+1))} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 24) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+1)) << 16) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+2)) << 8) 
                                                                    |  ($T1)(*((unsigned char *)Value.buffer+3))} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 56) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+1)) << 48) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+2)) << 40) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+3)) << 32) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+4)) << 24) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+5)) << 16) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+6)) << 8) 
                                                                    |  ($T1)(*((unsigned char *)Value.buffer+7))} }}
- (unsigned char *)Value.buffer,1
- (unsigned char *)Value.buffer,2
- (unsigned char *)Value.buffer,4
- (unsigned char *)Value.buffer,8