use hashable frame