}
private static ChangeInfo insertHSSFRange(Worksheet sheet, int tRow, int lCol, int bRow, int rCol, boolean horizontal, int copyRightBelow) {
final Book book = (Book) sheet.getWorkbook();
final RefSheet refSheet = getRefSheet(book, sheet);
final Set<Ref>[] refs = refSheet.insertRange(tRow, lCol, bRow, rCol, horizontal);
final int num = horizontal ? rCol - lCol + 1 : bRow - tRow + 1;
final List<CellRangeAddress[]> shiftedRanges = horizontal ?
((HSSFSheetImpl)sheet).shiftColumnsRange(lCol, -1, num, tRow, bRow, true, false, true, false, copyRightBelow):
((HSSFSheetImpl)sheet).shiftRowsRange(tRow, -1, num, lCol, rCol, true, false, true, false, copyRightBelow);
final List<MergeChange> changeMerges = prepareChangeMerges(refSheet, shiftedRanges);