Added HMAC code etc