add assert for hlist