Program: 57890
Project: 57890
Buggy source:
public boolean setupRoadSchematic(Plot plot){
  final String world=plot.getArea().worldname;
  final LocalBlockQueue queue=GlobalBlockQueue.IMP.getNewQueue(world,false);
  Location bot=plot.getBottomAbs().subtract(1,0,1);
  Location top=plot.getTopAbs();
  final HybridPlotWorld plotworld=(HybridPlotWorld)plot.getArea();
  int sx=bot.getX() - plotworld.ROAD_WIDTH + 1;
  int sz=bot.getZ() + 1;
  int sy=plotworld.ROAD_HEIGHT;
  int ex=bot.getX();
  int ez=top.getZ();
  int ey=get_ey(queue,sx,ex,sz,ez,sy);
  int bz=sz - plotworld.ROAD_WIDTH;
  int tz=sz - 1;
  int ty=get_ey(queue,sx,ex,bz,tz,sy);
  Set<RegionWrapper> sideRoad=new HashSet<>(Collections.singletonList(new RegionWrapper(sx,ex,sy,ey,sz,ez)));
  final Set<RegionWrapper> intersection=new HashSet<>(Collections.singletonList(new RegionWrapper(sx,ex,sy,ty,bz,tz)));
  final String dir="String_Node_Str" + File.separator + "String_Node_Str"+ File.separator+ plot.getArea().toString()+ File.separator;
  SchematicHandler.manager.getCompoundTag(world,sideRoad,new RunnableVal<CompoundTag>(){
    @Override public void run(    CompoundTag value){
      SchematicHandler.manager.save(value,dir + "String_Node_Str");
      SchematicHandler.manager.getCompoundTag(world,intersection,new RunnableVal<CompoundTag>(){
        @Override public void run(        CompoundTag value){
          SchematicHandler.manager.save(value,dir + "String_Node_Str");
          plotworld.ROAD_SCHEMATIC_ENABLED=true;
          plotworld.setupSchematics();
        }
      }
);
    }
  }
);
  return true;
}

Fixed version (ground truth):
public boolean setupRoadSchematic(Plot plot){
  final String world=plot.getArea().worldname;
  final LocalBlockQueue queue=GlobalBlockQueue.IMP.getNewQueue(world,false);
  Location bot=plot.getBottomAbs().subtract(1,0,1);
  Location top=plot.getTopAbs();
  final HybridPlotWorld plotworld=(HybridPlotWorld)plot.getArea();
  PlotManager plotManager=plotworld.getPlotManager();
  int sx=bot.getX() - plotworld.ROAD_WIDTH + 1;
  int sz=bot.getZ() + 1;
  int sy=plotworld.ROAD_HEIGHT;
  int ex=bot.getX();
  int ez=top.getZ();
  int ey=get_ey(plotManager,queue,sx,ex,sz,ez,sy);
  int bz=sz - plotworld.ROAD_WIDTH;
  int tz=sz - 1;
  int ty=get_ey(plotManager,queue,sx,ex,bz,tz,sy);
  Set<RegionWrapper> sideRoad=new HashSet<>(Collections.singletonList(new RegionWrapper(sx,ex,sy,ey,sz,ez)));
  final Set<RegionWrapper> intersection=new HashSet<>(Collections.singletonList(new RegionWrapper(sx,ex,sy,ty,bz,tz)));
  final String dir="String_Node_Str" + File.separator + "String_Node_Str"+ File.separator+ plot.getArea().toString()+ File.separator;
  SchematicHandler.manager.getCompoundTag(world,sideRoad,new RunnableVal<CompoundTag>(){
    @Override public void run(    CompoundTag value){
      SchematicHandler.manager.save(value,dir + "String_Node_Str");
      SchematicHandler.manager.getCompoundTag(world,intersection,new RunnableVal<CompoundTag>(){
        @Override public void run(        CompoundTag value){
          SchematicHandler.manager.save(value,dir + "String_Node_Str");
          plotworld.ROAD_SCHEMATIC_ENABLED=true;
          plotworld.setupSchematics();
        }
      }
);
    }
  }
);
  return true;
}