text: public int addConditionalFormatting(CellRangeAddress[] regions, HSSFConditionalFormattingRule[] cfRules) {if (regions == null) {throw new IllegalArgumentException("regions must not be null");}for(CellRangeAddress range : regions) range.validate(SpreadsheetVersion.EXCEL97);if (cfRules == null) {throw new IllegalArgumentException("cfRules must not be null");}if (cfRules.length == 0) {throw new IllegalArgumentException("cfRules must not be empty");}if (cfRules.length > 3) {throw new IllegalArgumentException("Number of rules must not exceed 3");}CFRuleBase[] rules = new CFRuleBase[cfRules.length];for (int i = 0; i != cfRules.length; i++) {rules[i] = cfRules[i].getCfRuleRecord();}CFRecordsAggregate cfra = new CFRecordsAggregate(regions, rules);return _conditionalFormattingTable.add(cfra);}