hash handling