@Edent think you might be surprised at how fast the template based approach balloons out to huge number of permutations