anchor.diff:              // TODO: Fix once dart fixes this bug
               // zoom += e.wheelDeltaY;
               if (jse["deltaY"] != null) {
  -                zoom += -(jse["deltaY"] as int) / 100;
  +                zoom += -(jse["deltaY"] as int) / 200;
               } else {
                   zoom += (jse["wheelDeltaY"] as int) / 1000;
               }
  
positive.code: 
          ImageData data = snapshot.data == null ? ctx.getImageData(0, 0, canvas.width, canvas.height) : snapshot.data;
  
          for (int y = snapshot.y; y < 16; y++) {
              int sx = y == snapshot.y ? snapshot.x : 0;
              for (int x = sx; x < 16; x++) {
                  int sz = 0;
                  if (x == snapshot.x){
                      sz = snapshot.z;
                      snapshot.x = -1;
                  }
                  for (int z = 15; z >= 0; z--) {
                      Block block = getBlock(x, (i << 4) + y, z);
                      if (block.renderable)
                          block.renderCanvas(data, x, y, z, (i << 4) + y, this);
  
                      if (stopwatch.elapsedMilliseconds >= CanvasWorld.BUILD_LIMIT_MS) {
                          snapshot.x = x;
                          snapshot.y = y;
                          snapshot.z = z - 1;
                          snapshot.data = data;
                          return snapshot;
                      }
  
negative.code: 
      int x = 0;
      int y = 0;
      int z = 15;
  
      CanvasSnapshot() {
          canvas.width = 256 * 2;
  