code cleanup: better "invisible" hash