do everything in-memory