header hash functionality moved to subclass