fileIO and event framework