long time = System.nanoTime();
try {
chunk = CommonNMS.getChunk(this.chunkProvider.getOrCreateChunk(x, z));
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.a(throwable, "Exception generating new chunk");
CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Chunk to be generated");
crashreportsystemdetails.a("Location", String.format("%d,%d", x, z));
crashreportsystemdetails.a("Position hash", Long.valueOf(MathUtil.longHashToLong(x, z)));
crashreportsystemdetails.a("Generator", this.chunkProvider.getName());
throw new ReportedException(crashreport);
}
if (chunk != null) {
time = System.nanoTime() - time;
CommonPlugin.TIMINGS.onChunkGenerate(chunk, time);