Add WithPrefix and Preorder
Add todo