lhp implementation