code: func (runner *runner) EnsureRule(position RulePosition, table Table, chain Chain, args ...string) (bool, error) {
  	fullArgs := makeFullArgs(table, chain, args...)
  
  	runner.mu.Lock()
  	defer runner.mu.Unlock()
  
  	exists, err := runner.checkRule(table, chain, args...)
  	if err != nil {
  		return false, err
  	}
  	if exists {
  		return true, nil
  	}
  	out, err := runner.run(operation(position), fullArgs)
  	if err != nil {
  		return false, fmt.Errorf("error appending rule: %v: %s", err, out)
  	}
  	return false, nil
  }
docs: // EnsureRule is part of Interface.