Example with recursive template supported