code: func splitTerm(term string) (lhs, op, rhs string, ok bool) {
  	for i := range term {
  		remaining := term[i:]
  		for _, op := range termOperators {
  			if strings.HasPrefix(remaining, op) {
  				return term[0:i], op, term[i+len(op):], true
  			}
  		}
  	}
  	return "", "", "", false
  }
docs: // splitTerm returns the lhs, operator, and rhs parsed from the given term, along with an indicator of whether the parse was successful.
  // no escaping of special characters is supported in the lhs value, so the first occurrence of a recognized operator is used as the split point.
  // the literal rhs is returned, and the caller is responsible for applying any desired unescaping.