Program: 58168
Project: 58168
Buggy source:
public static void clear(final Player requester,final Plot plot){
  final PlotWorld plotworld=PlotMain.getWorldSettings(Bukkit.getWorld(plot.world));
  final long start=System.nanoTime();
  PlotHelper.setBiome(requester.getWorld(),plot,Biome.FOREST);
  PlotHelper.removeSign(requester,plot);
  PlayerFunctions.sendMessage(requester,C.CLEARING_PLOT);
  final World world=requester.getWorld();
  final Location pos1=getPlotBottomLoc(world,plot.id).add(1,0,1);
  final Location pos2=getPlotTopLoc(world,plot.id);
  final short[] plotfloors=new short[plotworld.TOP_BLOCK.length];
  final short[] plotfloors_data=new short[plotworld.TOP_BLOCK.length];
  final short[] filling=new short[plotworld.MAIN_BLOCK.length];
  final short[] filling_data=new short[plotworld.MAIN_BLOCK.length];
  for (int i=0; i < plotworld.TOP_BLOCK.length; i++) {
    Short[] result=getBlock(plotworld.TOP_BLOCK[i]);
    plotfloors[i]=result[0];
    plotfloors_data[i]=result[1];
  }
  for (int i=0; i < plotworld.MAIN_BLOCK.length; i++) {
    Short[] result=getBlock(plotworld.MAIN_BLOCK[i]);
    filling[i]=result[0];
    filling_data[i]=result[1];
  }
  final int prime=31;
  int h=1;
  h=(prime * h) + pos1.getBlockX();
  h=(prime * h) + pos1.getBlockZ();
  state=h;
  boolean canSetFast;
  try {
    new SetBlockFast();
    canSetFast=true;
  }
 catch (  Exception e) {
    canSetFast=false;
  }
  if (canSetFast) {
    PlotMain.getMain().getServer().getScheduler().runTaskAsynchronously(PlotMain.getMain(),(new Runnable(){
      @Override public void run(){
        try {
          for (int y=0; y < 1; y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == 7))) {
                  SetBlockFast.set(world,x,y,z,7,(byte)7);
                }
              }
            }
          }
          for (int y=1; y < plotworld.PLOT_HEIGHT; y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                int i=random(filling.length);
                short id=filling[i];
                byte d=(byte)filling_data[i];
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == id && block.getData() == d))) {
                  SetBlockFast.set(world,x,y,z,id,d);
                }
              }
            }
          }
          for (int y=plotworld.PLOT_HEIGHT; y < (plotworld.PLOT_HEIGHT + 1); y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                int i=random(plotfloors.length);
                short id=plotfloors[i];
                byte d=(byte)plotfloors_data[i];
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == id && block.getData() == d))) {
                  SetBlockFast.set(world,x,y,z,id,d);
                }
              }
            }
          }
          for (int y=plotworld.PLOT_HEIGHT + 1; y < (world.getMaxHeight() + 1); y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == 0))) {
                  SetBlockFast.set(world,x,y,z,0,(byte)0);
                }
              }
            }
          }
          PlayerFunctions.sendMessage(requester,C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
          SetBlockFast.update(requester);
          return;
        }
 catch (        Exception e) {
          PlayerFunctions.sendMessage(requester,C.PREFIX.s() + "String_Node_Str");
        }
      }
    }
));
    return;
  }
  if ((pos2.getBlockX() - pos1.getBlockX()) < 16) {
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),0,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),1,pos2.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),world.getMaxHeight(),pos2.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,pos1.getBlockX(),1,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT,pos2.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT + 1,pos2.getBlockZ()),plotfloors,plotfloors_data);
    PlayerFunctions.sendMessage(requester,"String_Node_Str" + C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
    return;
  }
  int startX=(pos1.getBlockX() / 16) * 16;
  int startZ=(pos1.getBlockZ() / 16) * 16;
  int chunkX=16 + pos2.getBlockX();
  int chunkZ=16 + pos2.getBlockZ();
  int plotMinX=getPlotBottomLoc(world,plot.id).getBlockX() + 1;
  int plotMinZ=getPlotBottomLoc(world,plot.id).getBlockZ() + 1;
  int plotMaxX=getPlotTopLoc(world,plot.id).getBlockX();
  int plotMaxZ=getPlotTopLoc(world,plot.id).getBlockZ();
  Location min=null;
  Location max=null;
  for (int i=startX; i < chunkX; i+=16) {
    for (int j=startZ; j < chunkZ; j+=16) {
      Plot plot1=getCurrentPlot(new Location(world,i,0,j));
      if ((plot1 != null) && (plot1.getId() != plot.getId()) && plot1.hasOwner()) {
        break;
      }
      Plot plot2=getCurrentPlot(new Location(world,i + 15,0,j));
      if ((plot2 != null) && (plot2.getId() != plot.getId()) && plot2.hasOwner()) {
        break;
      }
      Plot plot3=getCurrentPlot(new Location(world,i + 15,0,j + 15));
      if ((plot3 != null) && (plot3.getId() != plot.getId()) && plot3.hasOwner()) {
        break;
      }
      Plot plot4=getCurrentPlot(new Location(world,i,0,j + 15));
      if ((plot4 != null) && (plot4.getId() != plot.getId()) && plot4.hasOwner()) {
        break;
      }
      Plot plot5=getCurrentPlot(new Location(world,i + 15,0,j + 15));
      if ((plot5 != null) && (plot5.getId() != plot.getId()) && plot5.hasOwner()) {
        break;
      }
      if (min == null) {
        min=new Location(world,Math.max(i - 1,plotMinX),0,Math.max(j - 1,plotMinZ));
        max=new Location(world,Math.min(i + 16,plotMaxX),0,Math.min(j + 16,plotMaxZ));
      }
 else       if ((max.getBlockZ() < (j + 15)) || (max.getBlockX() < (i + 15))) {
        max=new Location(world,Math.min(i + 16,plotMaxX),0,Math.min(j + 16,plotMaxZ));
      }
      world.regenerateChunk(i / 16,j / 16);
    }
  }
  if (min == null) {
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),0,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),1,pos2.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),world.getMaxHeight(),pos2.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,pos1.getBlockX(),1,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT,pos2.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT + 1,pos2.getBlockZ()),plotfloors,plotfloors_data);
  }
 else {
    setSimpleCuboid(world,new Location(world,plotMinX,0,plotMinZ),new Location(world,min.getBlockX(),1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,min.getBlockX(),world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,plotMinZ),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),0,plotMinZ),new Location(world,max.getBlockX(),1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,max.getBlockX(),world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,min.getBlockX(),1,plotMinZ),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,plotMinZ),new Location(world,plotMaxX,1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,plotMaxX,world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,plotMinZ),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,plotMinX,0,min.getBlockZ()),new Location(world,min.getBlockX(),1,max.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),new Location(world,min.getBlockX(),world.getMaxHeight(),max.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,min.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,min.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,plotMinX,0,max.getBlockZ()),new Location(world,min.getBlockX(),1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,min.getBlockX(),world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,max.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),0,max.getBlockZ()),new Location(world,max.getBlockX(),1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,max.getBlockX(),world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,min.getBlockX(),1,max.getBlockZ()),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,min.getBlockZ()),new Location(world,plotMaxX,1,max.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,plotMaxX,world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,min.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,max.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,max.getBlockZ()),new Location(world,plotMaxX,1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,plotMaxX,world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,max.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
  }
  PlayerFunctions.sendMessage(requester,"String_Node_Str" + C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
  return;
}

Fixed version (ground truth):
public static void clear(final Player requester,final Plot plot){
  final PlotWorld plotworld=PlotMain.getWorldSettings(Bukkit.getWorld(plot.world));
  final long start=System.nanoTime();
  PlotHelper.setBiome(requester.getWorld(),plot,Biome.FOREST);
  PlotHelper.removeSign(requester,plot);
  PlayerFunctions.sendMessage(requester,C.CLEARING_PLOT);
  final World world=requester.getWorld();
  final Location pos1=getPlotBottomLoc(world,plot.id).add(1,0,1);
  final Location pos2=getPlotTopLoc(world,plot.id);
  final short[] plotfloors=new short[plotworld.TOP_BLOCK.length];
  final short[] plotfloors_data=new short[plotworld.TOP_BLOCK.length];
  final short[] filling=new short[plotworld.MAIN_BLOCK.length];
  final short[] filling_data=new short[plotworld.MAIN_BLOCK.length];
  for (int i=0; i < plotworld.TOP_BLOCK.length; i++) {
    Short[] result=getBlock(plotworld.TOP_BLOCK[i]);
    plotfloors[i]=result[0];
    plotfloors_data[i]=result[1];
  }
  for (int i=0; i < plotworld.MAIN_BLOCK.length; i++) {
    Short[] result=getBlock(plotworld.MAIN_BLOCK[i]);
    filling[i]=result[0];
    filling_data[i]=result[1];
  }
  final int prime=31;
  int h=1;
  h=(prime * h) + pos1.getBlockX();
  h=(prime * h) + pos1.getBlockZ();
  state=h;
  boolean canSetFast;
  try {
    new SetBlockFast();
    canSetFast=true;
  }
 catch (  Exception e) {
    canSetFast=false;
  }
  if (canSetFast) {
    PlotMain.getMain().getServer().getScheduler().runTaskAsynchronously(PlotMain.getMain(),(new Runnable(){
      @Override public void run(){
        try {
          for (int y=0; y < 1; y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == 7))) {
                  SetBlockFast.set(world,x,y,z,7,(byte)7);
                }
              }
            }
          }
          for (int y=1; y < plotworld.PLOT_HEIGHT; y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                int i=random(filling.length);
                short id=filling[i];
                byte d=(byte)filling_data[i];
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == id && block.getData() == d))) {
                  SetBlockFast.set(world,x,y,z,id,d);
                }
              }
            }
          }
          for (int y=plotworld.PLOT_HEIGHT; y < (plotworld.PLOT_HEIGHT + 1); y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                int i=random(plotfloors.length);
                short id=plotfloors[i];
                byte d=(byte)plotfloors_data[i];
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == id && block.getData() == d))) {
                  SetBlockFast.set(world,x,y,z,id,d);
                }
              }
            }
          }
          for (int y=plotworld.PLOT_HEIGHT + 1; y < (world.getMaxHeight() + 1); y++) {
            for (int x=pos1.getBlockX(); x <= pos2.getBlockX(); x++) {
              for (int z=pos1.getBlockZ(); z <= pos2.getBlockZ(); z++) {
                Block block=world.getBlockAt(x,y,z);
                if (!((block.getTypeId() == 0))) {
                  SetBlockFast.set(world,x,y,z,0,(byte)0);
                }
              }
            }
          }
          PlayerFunctions.sendMessage(requester,C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
          SetBlockFast.update(requester);
          return;
        }
 catch (        Exception e) {
          if (Settings.DEBUG) {
            PlotMain.sendConsoleSenderMessage(C.PREFIX.s() + "String_Node_Str");
            e.printStackTrace();
          }
 else {
            PlotMain.sendConsoleSenderMessage(C.PREFIX.s() + "String_Node_Str");
          }
          PlayerFunctions.sendMessage(requester,C.PREFIX.s() + "String_Node_Str");
        }
      }
    }
));
    return;
  }
  if ((pos2.getBlockX() - pos1.getBlockX()) < 16) {
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),0,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),1,pos2.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),world.getMaxHeight(),pos2.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,pos1.getBlockX(),1,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT,pos2.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT + 1,pos2.getBlockZ()),plotfloors,plotfloors_data);
    PlayerFunctions.sendMessage(requester,"String_Node_Str" + C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
    return;
  }
  int startX=(pos1.getBlockX() / 16) * 16;
  int startZ=(pos1.getBlockZ() / 16) * 16;
  int chunkX=16 + pos2.getBlockX();
  int chunkZ=16 + pos2.getBlockZ();
  int plotMinX=getPlotBottomLoc(world,plot.id).getBlockX() + 1;
  int plotMinZ=getPlotBottomLoc(world,plot.id).getBlockZ() + 1;
  int plotMaxX=getPlotTopLoc(world,plot.id).getBlockX();
  int plotMaxZ=getPlotTopLoc(world,plot.id).getBlockZ();
  Location min=null;
  Location max=null;
  for (int i=startX; i < chunkX; i+=16) {
    for (int j=startZ; j < chunkZ; j+=16) {
      Plot plot1=getCurrentPlot(new Location(world,i,0,j));
      if ((plot1 != null) && (plot1.getId() != plot.getId()) && plot1.hasOwner()) {
        break;
      }
      Plot plot2=getCurrentPlot(new Location(world,i + 15,0,j));
      if ((plot2 != null) && (plot2.getId() != plot.getId()) && plot2.hasOwner()) {
        break;
      }
      Plot plot3=getCurrentPlot(new Location(world,i + 15,0,j + 15));
      if ((plot3 != null) && (plot3.getId() != plot.getId()) && plot3.hasOwner()) {
        break;
      }
      Plot plot4=getCurrentPlot(new Location(world,i,0,j + 15));
      if ((plot4 != null) && (plot4.getId() != plot.getId()) && plot4.hasOwner()) {
        break;
      }
      Plot plot5=getCurrentPlot(new Location(world,i + 15,0,j + 15));
      if ((plot5 != null) && (plot5.getId() != plot.getId()) && plot5.hasOwner()) {
        break;
      }
      if (min == null) {
        min=new Location(world,Math.max(i - 1,plotMinX),0,Math.max(j - 1,plotMinZ));
        max=new Location(world,Math.min(i + 16,plotMaxX),0,Math.min(j + 16,plotMaxZ));
      }
 else       if ((max.getBlockZ() < (j + 15)) || (max.getBlockX() < (i + 15))) {
        max=new Location(world,Math.min(i + 16,plotMaxX),0,Math.min(j + 16,plotMaxZ));
      }
      world.regenerateChunk(i / 16,j / 16);
    }
  }
  if (min == null) {
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),0,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),1,pos2.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),world.getMaxHeight(),pos2.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,pos1.getBlockX(),1,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT,pos2.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,pos1.getBlockX(),plotworld.PLOT_HEIGHT,pos1.getBlockZ()),new Location(world,pos2.getBlockX(),plotworld.PLOT_HEIGHT + 1,pos2.getBlockZ()),plotfloors,plotfloors_data);
  }
 else {
    setSimpleCuboid(world,new Location(world,plotMinX,0,plotMinZ),new Location(world,min.getBlockX(),1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,min.getBlockX(),world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,plotMinZ),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),0,plotMinZ),new Location(world,max.getBlockX(),1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,max.getBlockX(),world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,min.getBlockX(),1,plotMinZ),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,plotMinZ),new Location(world,plotMaxX,1,min.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMinZ),new Location(world,plotMaxX,world.getMaxHeight(),min.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,plotMinZ),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,min.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,plotMinZ),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,plotMinX,0,min.getBlockZ()),new Location(world,min.getBlockX(),1,max.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,min.getBlockZ()),new Location(world,min.getBlockX(),world.getMaxHeight(),max.getBlockZ()),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,min.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,min.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,plotMinX,0,max.getBlockZ()),new Location(world,min.getBlockX(),1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,min.getBlockX(),world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,plotMinX,1,max.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,plotMinX,plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),0,max.getBlockZ()),new Location(world,max.getBlockX(),1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,max.getBlockX(),world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,min.getBlockX(),1,max.getBlockZ()),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,min.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,min.getBlockZ()),new Location(world,plotMaxX,1,max.getBlockZ()),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,plotMaxX,world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,min.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,max.getBlockZ()),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,min.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),plotfloors,plotfloors_data);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),0,max.getBlockZ()),new Location(world,plotMaxX,1,plotMaxZ),(short)7);
    setSimpleCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT + 1,max.getBlockZ()),new Location(world,plotMaxX,world.getMaxHeight(),plotMaxZ),(short)0);
    setCuboid(world,new Location(world,max.getBlockX(),1,max.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT,plotMaxZ),filling,filling_data);
    setCuboid(world,new Location(world,max.getBlockX(),plotworld.PLOT_HEIGHT,max.getBlockZ()),new Location(world,plotMaxX,plotworld.PLOT_HEIGHT + 1,plotMaxZ),plotfloors,plotfloors_data);
  }
  PlayerFunctions.sendMessage(requester,"String_Node_Str" + C.CLEARING_DONE.s().replaceAll("String_Node_Str","String_Node_Str" + ((System.nanoTime() - start) / 1000000.0)));
  return;
}