code: func processIsolate(content []byte) (*processedIsolate, error) {
  	isolate, err := parseIsolate(content)
  	if err != nil {
  		return nil, err
  	}
  	if err := isolate.Variables.verify(); err != nil {
  		return nil, err
  	}
  	out := &processedIsolate{
  		isolate.Includes,
  		make([]*processedCondition, len(isolate.Conditions)),
  		isolate.Variables,
  		variablesValuesSet{},
  	}
  	for i, cond := range isolate.Conditions {
  		out.conditions[i], err = processCondition(cond, out.varsValsSet)
  		if err != nil {
  			return nil, err
  		}
  	}
  	return out, nil
  }
docs: // processIsolate loads isolate, then verifies and returns it as
  // a processedIsolate for faster further processing.