anchor.diff:  
     map_o := FDestreamer.JSONStreamToJson(AStream) as TJSONObject;
   
  -  cp.Levels := map_o.Integers['Levels'];
  -  cp.Height := map_o.Integers['Height'];
  -  cp.Width  := map_o.Integers['Width'];
  +  cp.Levels := map_o.Integers['levels'];
  +  cp.Height := map_o.Integers['height'];
  +  cp.Width  := map_o.Integers['width'];
   
     Result := TVCMIMap.CreateExisting(FMapEnv, cp);
     try
       try
  +      DeStreamTiles(map_o,Result);
   
         FDestreamer.JSONToObject(map_o, Result);
   
  -      FDestreamer.JSONToObject(map_o.Objects['templates'],Result.Templates);
  -      FDestreamer.JSONToObject(map_o.Objects['objects'],Result.Objects);
  +      FDestreamer.JSONToCollection(map_o.Elements[TEMPLATES_FIELD],Result.Templates);
  +      FDestreamer.JSONToCollection(map_o.Elements[OBJECTS_FIELD],Result.Objects);
   
       finally
         map_o.Free;
  
positive.code: uses
    typinfo;
  
  
  { TMapWriterVCMI }
  
  
negative.code: 
      d := FStreamer.StreamCollection(AMap.Templates);
  
      map_o.Add(TEMPLATES_FIELD, d);
  
      d := FStreamer.StreamCollection(AMap.Objects);
      map_o.Add(OBJECTS_FIELD,d);
  
      StreamTiles(map_o, AMap);
  
  