refactor into FUSE class