class BaseFileSystem extends FileSystem implements WithParams<T>, Serializable {

	public static BaseFileSystem of(Params params) {
		if (BaseFileSystem.isFileSystem(params)) {
			try {
				return AnnotationUtils.createFileSystem(params.get(HasIoName.IO_NAME), params);
			} catch (Exception e) {
				throw new RuntimeException(e);
			}
		} else {
			throw new RuntimeException("NOT a FileSystem parameter.");
		}
	}

	protected  BaseFileSystem(Params params);

}