need to bring back shelve to reduce stardict memory usage