hall的head部分实现