Some refactoring for Omni