#40 transform head and tail to Traversal and add Reverse