get hash_combine
change typedef to using
added nth