don't use hash to set recursive variable