add HMAC
optimize import