code: func ProgramRule(table Table, chain string, action Action, args []string) error {
  	if Exists(table, chain, args...) != (action == Delete) {
  		return nil
  	}
  	return RawCombinedOutput(append([]string{"-t", string(table), string(action), chain}, args...)...)
  }
docs: // ProgramRule adds the rule specified by args only if the
  // rule is not already present in the chain. Reciprocally,
  // it removes the rule only if present.