bind to a map, and nested templates