improve the hyper lib