code: protected synchronized XAttributeMap deserialize() throws IOException {
  		if(this.size == 0) {
  			return new XAttributeMapLazyImpl<XAttributeMapImpl>(XAttributeMapImpl.class);
  		} else {
  			if(cacheMap != null && cacheMap.get() != null) {
  				return cacheMap.get();
  			} else {
  				storage.seek(0);
  				XAttributeMap deserialized = this.serializer.deserialize(storage);
  				cacheMap = new WeakReference<XAttributeMap>(deserialized);
  				return deserialized;
  			}
  		}
  	}
docs: Retrieves a quick-access representation of this attribute map
  for actual usage. De-buffers the attribute map and creates an
  in-memory representation which should be discarded after use
  to free memory.
  
  @return In-memory copy of this attribute map.