code: func (j *JSONPath) evalUnion(input []reflect.Value, node *UnionNode) ([]reflect.Value, error) {
  	result := []reflect.Value{}
  	for _, listNode := range node.Nodes {
  		temp, err := j.evalList(input, listNode)
  		if err != nil {
  			return input, err
  		}
  		result = append(result, temp...)
  	}
  	return result, nil
  }
docs: // evalUnion evaluates UnionNode