use template strings instead of the dual map system