@Override
	public GFileSystem create(FSRLRoot targetFSRL, ByteProvider byteProvider,
			FileSystemService fsService, TaskMonitor monitor)
			throws IOException, CancelledException {
		
		File compressedFile = null;
		File decompressedFile = null;
		try {
			compressedFile =
				fsService.createPlaintextTempFile(byteProvider, LZFSE_TEMP_PREFIX, monitor);
			decompressedFile = lzfseDecompress(compressedFile);
			return new LzfseFileSystem(targetFSRL, decompressedFile, fsService, monitor);
		}
		finally {
			byteProvider.close();
			if (compressedFile != null && compressedFile.exists()) {
				compressedFile.delete();
			}
			if (decompressedFile != null && decompressedFile.exists()) {
				decompressedFile.delete();
			}
		}
	}
Factory to identify and create instances of a {@link LzfseFileSystem}

@see <a href="https://github.com/lzfse/lzfse">lzfse reference implementation</a>
Ghidra/Features/FileFormats/src/main/java/ghidra/file/formats/lzfse/LzfseFileSystemFactory.java