What's the idea here with not having `header`, `template`, and `sort_node` be explicit parameters?