func parseTemplateVar(v []byte) (name, key []byte) {
	stripped := bytes.Map(func(r rune) rune {
		if unicode.IsSpace(r) || r == '%' {
			return -1
		}
		return r
	}, v)
	split := bytes.SplitN(stripped, []byte("_"), 2)
	name = split[0]
	if len(split) == 2 {
		key = split[1]
	} else {
		key = []byte("")
	}
	return name, key
}
// parseTemplateVar extracts the name of the var and the key (or index if it can be
// cast to an int)
parseTemplateVar extracts the name of the var and the key (or index if it can be
cast to an int)
// parseTemplateVar extracts the name of the var and the key ( or index if it can be // cast to an int )
func parseTemplateVar(v []byte) (name, key []byte) {
	stripped := bytes.Map(func(r rune) rune {
		if unicode.IsSpace(r) || r == '%' {
			return -1
		}
		return r
	}, v)
	split := bytes.SplitN(stripped, []byte("_"), 2)
	name = split[0]
	if len(split) == 2 {
		key = split[1]
	} else {
		key = []byte("")
	}
	return name, key
}
func parseTemplateVar ( v [ ] byte ) ( name , key [ ] byte ) { stripped := bytes . Map ( func ( r rune ) rune { if unicode . IsSpace ( r ) || r == '%' { return - 1 } return r } , v ) split := bytes . SplitN ( stripped , [ ] byte ( " " ) , 2 ) name = split [ 0 ] if len ( split ) == 2 { key = split [ 1 ] } else { key = [ ] byte ( " " ) } return name , key }
parseTemplateVar extracts the name of the var and the key (or index if it can be
cast to an int)
parseTemplateVar extracts the name of the var and the key ( or index if it can be cast to an int )