anchor.diff:        }
         if (sMask & (1 << i) != 0) {
           int idx = 0;
  -        Map section = sections[i];
  -        if (section == null) section = sections[i] = new Map();
  -        Uint16List blocks = new Uint16List(16 * 16 * 16);
  -        List<int> lights = new List(16 * 16 * 16);
  -        List<int> skys = new List(16 * 16 * 16);
  -        int count = 0;
  +        ChunkSection cs = new ChunkSection();
           for (int oy = 0; oy < 16; oy++) {
             for (int oz = 0; oz < 16; oz++) {
               for (int ox = 0; ox < 16; ox++) {
  
positive.code:     for (int i = 0; i < 16; i++) {
        var dSection = dSections[i];
        if (dSection != null) {
          ChunkSection section = sections[i] = new ChunkSection();
          section.count = dSection['count'];
          section.blocks = new Uint16List.view(new Uint8List.fromList(CryptoUtils.base64StringToBytes(dSection['blocks'])).buffer);
          section.light = new Uint8List.fromList(CryptoUtils.base64StringToBytes(dSection['light']));
          section.sky = new Uint8List.fromList(CryptoUtils.base64StringToBytes(dSection['sky']));
        }
      }
      if (data['done']) {
  
negative.code:                 _nextId = (_nextId + 1) & 0xFFFF;
                }
  
                cs.blocks[idx] = rid;
                cs.light[idx] = light;
                cs.sky[idx] = sky;
                idx++;
  
                if (block != Blocks.AIR) cs.count++;
                if (light != 0) cs.count++;
                if (sky != 15) cs.count++;
              }
            }
          }
          var section = new Map();
          sections[i] = section;
          section['buffer'] = CryptoUtils.bytesToBase64(cs._buffer);
          section['count'] = cs.count;
          port.send(out);
          sections[i] = null;
        }
  