? jakarta-poi/src/java/Test.java
Index: jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java,v
retrieving revision 1.16
diff -r1.16 Sheet.java
274a275,314
>      * Clones the low level records of this sheet and returns the new sheet instance.
>      */
>     public Sheet cloneSheet()
>     {
>       ArrayList clonedRecords = new ArrayList(this.records.size());
>       for (int i=0; i<this.records.size();i++) {
>         Record rec = (Record)((Record)this.records.get(i)).clone();
>         //Need to pull out the Row record and the Value records from their
>         //Aggregates.
>         //This is probably the best way to do it since we probably dont want the createSheet
>         //To cater for these artificial Record types
>         if (rec instanceof RowRecordsAggregate) {
>           RowRecordsAggregate rrAgg = (RowRecordsAggregate)rec;
>           for (Iterator rowIter = rrAgg.getIterator();rowIter.hasNext();) {
>             Record rowRec = (Record)rowIter.next();
>             clonedRecords.add(rowRec);
>           }
>         } else if (rec instanceof ValueRecordsAggregate) {
>           ValueRecordsAggregate vrAgg = (ValueRecordsAggregate)rec;
>           for (Iterator cellIter = vrAgg.getIterator();cellIter.hasNext();) {
>             Record valRec = (Record)cellIter.next();
>             clonedRecords.add(valRec);
>           }
>         } else if (rec instanceof FormulaRecordAggregate) {
>           FormulaRecordAggregate fmAgg = (FormulaRecordAggregate)rec;
>           Record fmAggRec = fmAgg.getFormulaRecord();
>           if (fmAggRec != null)
>             clonedRecords.add(fmAggRec);
>           fmAggRec =   fmAgg.getStringRecord();
>           if (fmAggRec != null)
>             clonedRecords.add(fmAggRec);
>         } else {
>           clonedRecords.add(rec);
>         }
>       }
>       return createSheet(clonedRecords, 0, 0);
>     }
> 
> 
>     /**
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java,v
retrieving revision 1.2
diff -r1.2 BOFRecord.java
360a361,371
> 
>     public Object clone() {
>       BOFRecord rec = new BOFRecord();
>       rec.field_1_version = field_1_version;
>       rec.field_2_type = field_2_type;
>       rec.field_3_build = field_3_build;
>       rec.field_4_year = field_4_year;
>       rec.field_5_history = field_5_history;
>       rec.field_6_rversion = field_6_rversion;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java,v
retrieving revision 1.3
diff -r1.3 BlankRecord.java
351a352,359
> 
>     public Object clone() {
>       BlankRecord rec = new BlankRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_col = field_2_col;
>       rec.field_3_xf = field_3_xf;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java,v
retrieving revision 1.3
diff -r1.3 BoolErrRecord.java
415a416,425
> 
>     public Object clone() {
>       BoolErrRecord rec = new BoolErrRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_column = field_2_column;
>       rec.field_3_xf_index = field_3_xf_index;
>       rec.field_4_bBoolErr = field_4_bBoolErr;
>       rec.field_5_fError = field_5_fError;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java,v
retrieving revision 1.2
diff -r1.2 CalcCountRecord.java
171a172,177
> 
>     public Object clone() {
>       CalcCountRecord rec = new CalcCountRecord();
>       rec.field_1_iterations = field_1_iterations;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java,v
retrieving revision 1.2
diff -r1.2 CalcModeRecord.java
196a197,202
> 
>     public Object clone() {
>       CalcModeRecord rec = new CalcModeRecord();
>       rec.field_1_calcmode = field_1_calcmode;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java,v
retrieving revision 1.3
diff -r1.3 CellValueRecordInterface.java
140a141,142
> 
>     public Object clone();
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java,v
retrieving revision 1.3
diff -r1.3 DefaultColWidthRecord.java
167a168,173
> 
>     public Object clone() {
>       DefaultColWidthRecord rec = new DefaultColWidthRecord();
>       rec.field_1_col_width = field_1_col_width;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java,v
retrieving revision 1.2
diff -r1.2 DefaultRowHeightRecord.java
192a193,199
> 
>     public Object clone() {
>       DefaultRowHeightRecord rec = new DefaultRowHeightRecord();
>       rec.field_1_option_flags = field_1_option_flags;
>       rec.field_2_row_height = field_2_row_height;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java,v
retrieving revision 1.2
diff -r1.2 DeltaRecord.java
169a170,175
> 
>     public Object clone() {
>       DeltaRecord rec = new DeltaRecord();
>       rec.field_1_max_change = field_1_max_change;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java,v
retrieving revision 1.3
diff -r1.3 DimensionsRecord.java
246a247,256
> 
>     public Object clone() {
>       DimensionsRecord rec = new DimensionsRecord();
>       rec.field_1_first_row = field_1_first_row;
>       rec.field_2_last_row = field_2_last_row;
>       rec.field_3_first_col = field_3_first_col;
>       rec.field_4_last_col = field_4_last_col;
>       rec.field_5_zero = field_5_zero;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java,v
retrieving revision 1.2
diff -r1.2 EOFRecord.java
143a144,148
> 
>     public Object clone() {
>       EOFRecord rec = new EOFRecord();
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java,v
retrieving revision 1.6
diff -r1.6 FooterRecord.java
220a221,227
> 
>     public Object clone() {
>       FooterRecord rec = new FooterRecord();
>       rec.field_1_footer_len = field_1_footer_len;
>       rec.field_2_footer = field_2_footer;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java,v
retrieving revision 1.14
diff -r1.14 FormulaRecord.java
80c80
<     
---
> 
82c82
<     
---
> 
85c85
<     
---
> 
95c95
<     
---
> 
148c148
<         
---
> 
155,156c155,156
<             System.err.println("[WARNING] Unknown Ptg " 
<                     + uoe.getMessage() 
---
>             System.err.println("[WARNING] Unknown Ptg "
>                     + uoe.getMessage()
324c324
<      * this method can return null is we are unable to create Ptgs from 
---
>      * this method can return null is we are unable to create Ptgs from
383,385c383,385
<     
<     
<     
---
> 
> 
> 
390c390
<         
---
> 
525,526c525,526
<     
<     
---
> 
> 
549,550c549,550
<             
<             
---
> 
> 
560c560
<                 .append("\n");                
---
>                 .append("\n");
562,563c562,563
<             
<             
---
> 
> 
570c570,591
<     
---
> 
>     public Object clone() {
>       FormulaRecord rec = new FormulaRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_column = field_2_column;
>       rec.field_3_xf = field_3_xf;
>       rec.field_4_value = field_4_value;
>       rec.field_5_options = field_5_options;
>       rec.field_6_zero = field_6_zero;
>       rec.field_7_expression_len = field_7_expression_len;
>       rec.field_8_parsed_expr = new Stack();
>       int size = 0;
>       if (field_8_parsed_expr != null)
>         size = field_8_parsed_expr.size();
>       for (int i=0; i< size; i++) {
>         Ptg ptg = (Ptg)((Ptg)field_8_parsed_expr.get(i)).clone();
>         rec.field_8_parsed_expr.set(i, ptg);
>       }
>       rec.all_data = all_data;
>       return rec;
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java,v
retrieving revision 1.3
diff -r1.3 GridsetRecord.java
178a179,184
> 
>     public Object clone() {
>       GridsetRecord rec = new GridsetRecord();
>       rec.field_1_gridset_flag = field_1_gridset_flag;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java,v
retrieving revision 1.3
diff -r1.3 GutsRecord.java
248a249,257
> 
>     public Object clone() {
>       GutsRecord rec = new GutsRecord();
>       rec.field_1_left_row_gutter = field_1_left_row_gutter;
>       rec.field_2_top_col_gutter = field_2_top_col_gutter;
>       rec.field_3_row_level_max = field_3_row_level_max;
>       rec.field_4_col_level_max = field_4_col_level_max;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java,v
retrieving revision 1.3
diff -r1.3 HCenterRecord.java
172a173,178
> 
>     public Object clone() {
>       HCenterRecord rec = new HCenterRecord();
>       rec.field_1_hcenter = field_1_hcenter;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java,v
retrieving revision 1.6
diff -r1.6 HeaderRecord.java
222a223,229
> 
>     public Object clone() {
>       HeaderRecord rec = new HeaderRecord();
>       rec.field_1_header_len = field_1_header_len;
>       rec.field_2_header = field_2_header;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java,v
retrieving revision 1.2
diff -r1.2 IndexRecord.java
227a228,238
> 
>     public Object clone() {
>       IndexRecord rec = new IndexRecord();
>       rec.field_1_zero = field_1_zero;
>       rec.field_2_first_row = field_2_first_row;
>       rec.field_3_last_row_add1 = field_3_last_row_add1;
>       rec.field_4_zero = field_4_zero;
>       rec.field_5_dbcells = new IntList();
>       rec.field_5_dbcells.addAll(field_5_dbcells);
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java,v
retrieving revision 1.2
diff -r1.2 IterationRecord.java
176a177,182
> 
>     public Object clone() {
>       IterationRecord rec = new IterationRecord();
>       rec.field_1_iteration = field_1_iteration;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java,v
retrieving revision 1.3
diff -r1.3 LabelRecord.java
316a317,327
> 
>     public Object clone() {
>       LabelRecord rec = new LabelRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_column = field_2_column;
>       rec.field_3_xf_index = field_3_xf_index;
>       rec.field_4_string_len = field_4_string_len;
>       rec.field_5_unicode_flag = field_5_unicode_flag;
>       rec.field_6_value = field_6_value;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java,v
retrieving revision 1.3
diff -r1.3 LabelSSTRecord.java
333a334,342
> 
>     public Object clone() {
>       LabelSSTRecord rec = new LabelSSTRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_column = field_2_column;
>       rec.field_3_xf_index = field_3_xf_index;
>       rec.field_4_sst_index = field_4_sst_index;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java,v
retrieving revision 1.5
diff -r1.5 NumberRecord.java
357a358,366
> 
>     public Object clone() {
>       NumberRecord rec = new NumberRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_col = field_2_col;
>       rec.field_3_xf = field_3_xf;
>       rec.field_4_value = field_4_value;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java,v
retrieving revision 1.3
diff -r1.3 PrintGridlinesRecord.java
175a176,181
> 
>     public Object clone() {
>       PrintGridlinesRecord rec = new PrintGridlinesRecord();
>       rec.field_1_print_gridlines = field_1_print_gridlines;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java,v
retrieving revision 1.3
diff -r1.3 PrintHeadersRecord.java
173a174,179
> 
>     public Object clone() {
>       PrintHeadersRecord rec = new PrintHeadersRecord();
>       rec.field_1_print_headers = field_1_print_headers;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java,v
retrieving revision 1.3
diff -r1.3 PrintSetupRecord.java
425a426,441
> 
>     public Object clone() {
>       PrintSetupRecord rec = new PrintSetupRecord();
>       rec.field_1_paper_size = field_1_paper_size;
>       rec.field_2_scale = field_2_scale;
>       rec.field_3_page_start = field_3_page_start;
>       rec.field_4_fit_width = field_4_fit_width;
>       rec.field_5_fit_height = field_5_fit_height;
>       rec.field_6_options = field_6_options;
>       rec.field_7_hresolution = field_7_hresolution;
>       rec.field_8_vresolution = field_8_vresolution;
>       rec.field_9_headermargin = field_9_headermargin;
>       rec.field_10_footermargin = field_10_footermargin;
>       rec.field_11_copies = field_11_copies;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java,v
retrieving revision 1.5
diff -r1.5 RKRecord.java
341a342,350
> 
>     public Object clone() {
>       RKRecord rec = new RKRecord();
>       rec.field_1_row = field_1_row;
>       rec.field_2_col = field_2_col;
>       rec.field_3_xf_index = field_3_xf_index;
>       rec.field_4_rk_number = field_4_rk_number;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java,v
retrieving revision 1.3
diff -r1.3 Record.java
243a244,247
> 
>     public Object clone() {
>       throw new RuntimeException("The class "+getClass().getName()+" needs to define a clone method");
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java,v
retrieving revision 1.3
diff -r1.3 RefModeRecord.java
172a173,178
> 
>     public Object clone() {
>       RefModeRecord rec = new RefModeRecord();
>       rec.field_1_mode = field_1_mode;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java,v
retrieving revision 1.5
diff -r1.5 RowRecord.java
514a515,527
> 
>     public Object clone() {
>       RowRecord rec = new RowRecord();
>       rec.field_1_row_number = field_1_row_number;
>       rec.field_2_first_col = field_2_first_col;
>       rec.field_3_last_col = field_3_last_col;
>       rec.field_4_height = field_4_height;
>       rec.field_5_optimize = field_5_optimize;
>       rec.field_6_reserved = field_6_reserved;
>       rec.field_7_option_flags = field_7_option_flags;
>       rec.field_8_xf_index = field_8_xf_index;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java,v
retrieving revision 1.2
diff -r1.2 SaveRecalcRecord.java
166a167,172
> 
>     public Object clone() {
>       SaveRecalcRecord rec = new SaveRecalcRecord();
>       rec.field_1_recalc = field_1_recalc;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java,v
retrieving revision 1.4
diff -r1.4 SelectionRecord.java
281a282,292
> 
>     public Object clone() {
>       SelectionRecord rec = new SelectionRecord();
>       rec.field_1_pane = field_1_pane;
>       rec.field_2_row_active_cell = field_2_row_active_cell;
>       rec.field_3_col_active_cell = field_3_col_active_cell;
>       rec.field_4_ref_active_cell = field_4_ref_active_cell;
>       rec.field_5_num_refs = field_5_num_refs;
>       rec.field_6_refs = field_6_refs;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java,v
retrieving revision 1.2
diff -r1.2 UnknownRecord.java
176a177,186
> 
>     /** Unlike the other Record.clone methods this is a shallow clone*/
>     public Object clone() {
>       UnknownRecord rec = new UnknownRecord();
>       rec.offset = offset;
>       rec.sid = sid;
>       rec.size = size;
>       rec.thedata = thedata;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java,v
retrieving revision 1.3
diff -r1.3 VCenterRecord.java
172a173,178
> 
>     public Object clone() {
>       VCenterRecord rec = new VCenterRecord();
>       rec.field_1_vcenter = field_1_vcenter;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java,v
retrieving revision 1.3
diff -r1.3 WSBoolRecord.java
417a418,424
> 
>     public Object clone() {
>       WSBoolRecord rec = new WSBoolRecord();
>       rec.field_1_wsbool = field_1_wsbool;
>       rec.field_2_wsbool = field_2_wsbool;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java,v
retrieving revision 1.4
diff -r1.4 WindowTwoRecord.java
617a618,629
> 
>     public Object clone() {
>       WindowTwoRecord rec = new WindowTwoRecord();
>       rec.field_1_options = field_1_options;
>       rec.field_2_top_row = field_2_top_row;
>       rec.field_3_left_col = field_3_left_col;
>       rec.field_4_header_color = field_4_header_color;
>       rec.field_5_page_break_zoom = field_5_page_break_zoom;
>       rec.field_6_normal_zoom = field_6_normal_zoom;
>       rec.field_7_reserved = field_7_reserved;
>       return rec;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java,v
retrieving revision 1.3
diff -r1.3 RowRecordsAggregate.java
221c221,232
<     
---
> 
>     /** Performs a deep clone of the record*/
>     public Object clone() {
>       RowRecordsAggregate rec = new RowRecordsAggregate();
>       for (Iterator rowIter = getIterator(); rowIter.hasNext();) {
>         //return the cloned Row Record & insert
>         RowRecord row = (RowRecord)((RowRecord)rowIter.next()).clone();
>         rec.insertRow(row);
>       }
>       return rec;
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java,v
retrieving revision 1.5
diff -r1.5 ValueRecordsAggregate.java
222c222
<     
---
> 
225c225
<         
---
> 
236a237,246
>     }
> 
>     /** Performs a deep clone of the record*/
>     public Object clone() {
>       ValueRecordsAggregate rec = new ValueRecordsAggregate();
>       for (Iterator valIter = getIterator(); valIter.hasNext();) {
>         CellValueRecordInterface val = (CellValueRecordInterface)((CellValueRecordInterface)valIter.next()).clone();
>         rec.insertCell(val);
>       }
>       return rec;
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java,v
retrieving revision 1.11
diff -r1.11 AddPtg.java
68c68
<  * Addition operator PTG the "+" binomial operator.  If you need more 
---
>  * Addition operator PTG the "+" binomial operator.  If you need more
78c78
<     
---
> 
92,93c92,93
<     
<    
---
> 
> 
113c113
<     
---
> 
119,120c119,120
<        
<    /** implementation of method from OperationsPtg*/  
---
> 
>    /** implementation of method from OperationsPtg*/
129c129
<     
---
> 
131c131,135
<            
---
> 
>     public Object clone() {
>       return new AddPtg();
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java,v
retrieving revision 1.9
diff -r1.9 Area3DPtg.java
85c85
<     
---
> 
91c91
<    
---
> 
94c94
<         
---
> 
104c104
<         
---
> 
192c192
<     
---
> 
227c227
<     
---
> 
238c238
<     
---
> 
248c248
<      * set whether the first column is relative 
---
>      * set whether the first column is relative
253c253
<     
---
> 
261c261
<     
---
> 
268c268
<     
---
> 
297c297
<         retval.append((new CellReference(getFirstRow(),getFirstColumn(),!isFirstRowRelative(),!isFirstColRelative())).toString()); 
---
>         retval.append((new CellReference(getFirstRow(),getFirstColumn(),!isFirstRowRelative(),!isFirstColRelative())).toString());
304a305,314
>    }
> 
>    public Object clone() {
>      Area3DPtg ptg = new Area3DPtg();
>      ptg.field_1_index_extern_sheet = field_1_index_extern_sheet;
>      ptg.field_2_first_row = field_2_first_row;
>      ptg.field_3_last_row = field_3_last_row;
>      ptg.field_4_first_column = field_4_first_column;
>      ptg.field_5_last_column = field_5_last_column;
>      return ptg;
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java,v
retrieving revision 1.11
diff -r1.11 AreaPtg.java
84c84
<     
---
> 
89,90c89,92
<     
<    
---
>     private AreaPtg() {
>       //Required for clone methods
>     }
> 
101c103
<         
---
> 
137c139
<         LittleEndian.putShort(array,offset+7,field_4_last_column);        
---
>         LittleEndian.putShort(array,offset+7,field_4_last_column);
171c173
<      * @param last row number in the area 
---
>      * @param last row number in the area
201c203
<     
---
> 
217c219
<     
---
> 
219c221
<      * set whether the first column is relative 
---
>      * set whether the first column is relative
264c266
<     
---
> 
280c282
<     
---
> 
287c289
<     
---
> 
314c316,325
<     
---
> 
>     public Object clone() {
>       AreaPtg ptg = new AreaPtg();
>       ptg.field_1_first_row = field_1_first_row;
>       ptg.field_2_last_row = field_2_last_row;
>       ptg.field_3_first_column = field_3_first_column;
>       ptg.field_4_last_column = field_4_last_column;
>       return ptg;
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java,v
retrieving revision 1.10
diff -r1.10 AttrPtg.java
94c94
<     
---
> 
140c140
<     
---
> 
188c188
<         LittleEndian.putShort(array,offset+2,field_2_data);                
---
>         LittleEndian.putShort(array,offset+2,field_2_data);
204c204
<   
---
> 
215c215
<         
---
> 
240,242c240,242
<     
<     
<  
---
> 
> 
> 
243a244,250
> 
>     public Object clone() {
>       AttrPtg ptg = new AttrPtg();
>       ptg.field_1_options = field_1_options;
>       ptg.field_2_data = field_2_data;
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java,v
retrieving revision 1.3
diff -r1.3 ConcatPtg.java
77c77
<     
---
> 
85c85
<     
---
> 
87c87
<         
---
> 
113c113,114
<     }    
---
>     }
> 
115d115
<        
124c124,128
<            
---
> 
>     public Object clone() {
>       return new ConcatPtg();
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java,v
retrieving revision 1.7
diff -r1.7 DividePtg.java
122c122,127
<     }      
---
>     }
> 
>     public Object clone() {
>       DividePtg ptg = new DividePtg();
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java,v
retrieving revision 1.4
diff -r1.4 ExpPtg.java
101c101
<     
---
> 
103c103,107
<     
---
> 
>     public Object clone() {
>       throw new RuntimeException("NO IDEA SHARED FORMULA EXP PTG");
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java,v
retrieving revision 1.2
diff -r1.2 FuncPtg.java
5c5
<     
---
> 
8,9c8,14
<     /**Creates new function pointer from a byte array 
<      * usually called while reading an excel file. 
---
> 
>     private FuncPtg() {
>       //Required for clone methods
>     }
> 
>     /**Creates new function pointer from a byte array
>      * usually called while reading an excel file.
19c24
<         }   
---
>         }
21c26
<     
---
> 
27c32
<     
---
> 
29a35,41
>     }
> 
>     public Object clone() {
>       FuncPtg ptg = new FuncPtg();
>       ptg.field_1_num_args = field_1_num_args;
>       ptg.field_2_fnc_index = field_2_fnc_index;
>       return ptg;
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java,v
retrieving revision 1.3
diff -r1.3 FuncVarPtg.java
4c4
<     
---
> 
6,8c6,12
<     
<  /**Creates new function pointer from a byte array 
<      * usually called while reading an excel file. 
---
> 
>     private FuncVarPtg() {
>       //Required for clone methods
>     }
> 
>  /**Creates new function pointer from a byte array
>      * usually called while reading an excel file.
15c19
<     
---
> 
30c34
<     
---
> 
36c40
<     
---
> 
40,41c44,52
<     
<     
---
> 
>     public Object clone() {
>       FuncVarPtg ptg = new FuncVarPtg();
>       ptg.field_1_num_args = field_1_num_args;
>       ptg.field_2_fnc_index = field_2_fnc_index;
>       return ptg;
>     }
> 
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java,v
retrieving revision 1.8
diff -r1.8 IntPtg.java
81c81,85
<   
---
> 
>     private IntPtg() {
>       //Required for clone methods
>     }
> 
86,87c90,91
<     
<     
---
> 
> 
118c122,128
<  public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}   
---
>  public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
> 
>    public Object clone() {
>      IntPtg ptg = new IntPtg();
>      ptg.field_1_value = field_1_value;
>      return ptg;
>    }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java,v
retrieving revision 1.3
diff -r1.3 MemErrPtg.java
124a125,131
> 
>     public Object clone() {
>       MemErrPtg ptg = new MemErrPtg();
>       ptg.field_1_reserved = field_1_reserved;
>       ptg.field_2_subex_len = field_2_subex_len;
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java,v
retrieving revision 1.2
diff -r1.2 MissingArgPtg.java
67c67
<    
---
> 
70c70
<    
---
> 
79,81c79,81
<     
<   
<      
---
> 
> 
> 
92c92
<    
---
> 
97c97
<     
---
> 
99c99,103
<         
---
> 
>     public Object clone() {
>       return new MissingArgPtg();
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java,v
retrieving revision 1.8
diff -r1.8 MultiplyPtg.java
76c76
<     
---
> 
90c90
<     
---
> 
114c114
<     
---
> 
130c130
<     
---
> 
138c138,142
<     }                  
---
>     }
> 
>     public Object clone() {
>       return new MultiplyPtg();
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java,v
retrieving revision 1.4
diff -r1.4 NamePtg.java
79a80,84
> 
>     private NamePtg() {
>       //Required for clone methods
>     }
> 
110c115
<     
---
> 
111a117,124
> 
>     public Object clone() {
>       NamePtg ptg = new NamePtg();
>       ptg.field_1_ixti = field_1_ixti;
>       ptg.field_2_label_index = field_2_label_index;
>       ptg.field_3_zero = field_3_zero;
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java,v
retrieving revision 1.4
diff -r1.4 NumberPtg.java
73c73,76
<         
---
>     private NumberPtg() {
>       //Required for clone methods
>     }
> 
79c82
<     
---
> 
82c85
<      *   that calls this method. 
---
>      *   that calls this method.
88,89c91,92
<     
<     
---
> 
> 
94,95c97,98
<     
<     
---
> 
> 
116a120,125
> 
>     public Object clone() {
>       NumberPtg ptg = new NumberPtg();
>       ptg.field_1_value = field_1_value;
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java,v
retrieving revision 1.8
diff -r1.8 ParenthesisPtg.java
63c63
<  * While formula tokens are stored in RPN order and thus do not need parenthesis for 
---
>  * While formula tokens are stored in RPN order and thus do not need parenthesis for
73c73
<    
---
> 
76c76
<    
---
> 
86,88c86,88
<     
<   
<     
---
> 
> 
> 
114c114
<           
---
> 
117,118c117,118
<     }  
<     
---
>     }
> 
120c120,124
<         
---
> 
>     public Object clone() {
>       return new ParenthesisPtg();
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java,v
retrieving revision 1.9
diff -r1.9 PowerPtg.java
114c114
<  
---
> 
118c118
<         
---
> 
123c123,127
<     }       
---
>     }
> 
>     public Object clone() {
>       return new PowerPtg();
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java,v
retrieving revision 1.21
diff -r1.21 Ptg.java
77c77
<         
---
> 
82c82
<     
---
> 
86c86
<     
---
> 
90c90
<         
---
> 
104c104
<                         while (!(o instanceof ParenthesisPtg)) { 
---
>                         while (!(o instanceof ParenthesisPtg)) {
110c110
<                     
---
> 
125c125
<             }   
---
>             }
130c130
<     
---
> 
170c170
<                 
---
> 
184,185c184,185
<             case MemErrPtg.sid :        // 0x27       These 3 values 
<             case MemErrPtg.sid+0x20 :   // 0x47       documented in 
---
>             case MemErrPtg.sid :        // 0x27       These 3 values
>             case MemErrPtg.sid+0x20 :   // 0x47       documented in
193c193
<                 
---
> 
196c196
<                 break;   
---
>                 break;
199c199
<                 break;   
---
>                 break;
202c202
<                 break;   
---
>                 break;
211c211
<                 
---
> 
218c218
<                 
---
> 
222c222
<                 
---
> 
229c229
<                 
---
> 
249,250c249,250
<             case Area3DPtg.sid :          // 0x3b     These 3 values 
<              case Area3DPtg.sid+0x20 :     // 0x5b     documented in 
---
>             case Area3DPtg.sid :          // 0x3b     These 3 values
>              case Area3DPtg.sid+0x20 :     // 0x5b     documented in
256,257c256,257
<             case Ref3DPtg.sid:            // 0x3a     These 3 values 
<              case Ref3DPtg.sid+0x20:       // 0x5a     documented in 
---
>             case Ref3DPtg.sid:            // 0x3a     These 3 values
>              case Ref3DPtg.sid+0x20:       // 0x5a     documented in
262c262
<                 
---
> 
273c273
<         
---
> 
278c278
<         } else 
---
>         } else
281c281
<         
---
> 
296c296
<     
---
> 
307c307
<         writeBytes(ba,0);        
---
>         writeBytes(ba,0);
315c315
<     
---
> 
319c319
<     
---
> 
321c321
<     
---
> 
325c325
<     
---
> 
330c330
<     
---
> 
333,334c333,336
<     
<     
---
>     public abstract Object clone();
> 
> 
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java,v
retrieving revision 1.8
diff -r1.8 Ref3DPtg.java
93c93
<     
---
> 
99c99
<         setRowRelative(!c.isRowAbsolute());   
---
>         setRowRelative(!c.isRowAbsolute());
155c155
<     
---
> 
159c159
<     
---
> 
164c164
<     
---
> 
201c201
<         retval.append((new CellReference(getRow(),getColumn(),!isRowRelative(),!isColRelative())).toString()); 
---
>         retval.append((new CellReference(getRow(),getColumn(),!isRowRelative(),!isColRelative())).toString());
205a206,213
> 
>    public Object clone() {
>      Ref3DPtg ptg = new Ref3DPtg();
>      ptg.field_1_index_extern_sheet = field_1_index_extern_sheet;
>      ptg.field_2_row = field_2_row;
>      ptg.field_3_column = field_3_column;
>      return ptg;
>    }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java,v
retrieving revision 1.6
diff -r1.6 ReferencePtg.java
84,85c84,87
<     
<     
---
>     private ReferencePtg() {
>       //Required for clone methods
>     }
> 
87c89
<      * Takes in a String represnetation of a cell reference and fills out the 
---
>      * Takes in a String represnetation of a cell reference and fills out the
140c142
<     
---
> 
144c146
<     
---
> 
149c151
<     
---
> 
184c186
<     
---
> 
188c190,196
<     
---
> 
>     public Object clone() {
>       ReferencePtg ptg = new ReferencePtg();
>       ptg.field_1_row = field_1_row;
>       ptg.field_2_col = field_2_col;
>       return ptg;
>     }
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java,v
retrieving revision 1.4
diff -r1.4 StringPtg.java
73a74,76
>     private StringPtg() {
>       //Required for clone methods
>     }
120a124,129
>    }
> 
>    public Object clone() {
>      StringPtg ptg = new StringPtg();
>      ptg.field_1_value = field_1_value;
>      return ptg;
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java,v
retrieving revision 1.7
diff -r1.7 SubtractPtg.java
72c72
<     extends OperationPtg    
---
>     extends OperationPtg
112c112
<        
---
> 
119a120,123
>     }
> 
>     public Object clone() {
>       return new SubtractPtg();
Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java,v
retrieving revision 1.3
diff -r1.3 UnknownPtg.java
102c102,106
<     
---
>     public Object clone() {
>       return new UnknownPtg();
>     }
> 
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java,v
retrieving revision 1.11
diff -r1.11 HSSFSheet.java
145a146,149
>     HSSFSheet cloneSheet(Workbook book) {
>       return new HSSFSheet(book, sheet.cloneSheet());
>     }
> 
Index: jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
===================================================================
RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java,v
retrieving revision 1.11
diff -r1.11 HSSFWorkbook.java
114c114
<     
---
> 
120c120
<     
---
> 
149c149
<         
---
> 
171c171
<         
---
> 
244c244
<      */    
---
>      */
248c248
<         
---
> 
251c251
<     
---
> 
275a276,297
>      * create an HSSFSheet from an existing sheet in the HSSFWorkbook.
>      *
>      * @return HSSFSheet representing the cloned sheet.
>      */
> 
>     public HSSFSheet cloneSheet(int sheetNum) {
>       HSSFSheet srcSheet = (HSSFSheet)sheets.get(sheetNum);
>       String srcName = workbook.getSheetName(sheetNum);
>       if (srcSheet != null) {
>         HSSFSheet clonedSheet = srcSheet.cloneSheet(workbook);
>         WindowTwoRecord windowTwo = (WindowTwoRecord) clonedSheet.getSheet().findFirstRecordBySid(WindowTwoRecord.sid);
>         windowTwo.setSelected(sheets.size() == 1);
>         windowTwo.setPaged(sheets.size() == 1);
> 
>         sheets.add(clonedSheet);
>         workbook.setSheetName(sheets.size()-1, srcName+"[1]");
>         return clonedSheet;
>       }
>       return null;
>     }
> 
>     /**
547c569
<     
---
> 
550c572
<      */    
---
>      */
555c577
<     
---
> 
559c581
<      */    
---
>      */
562c584
<         
---
> 
565c587
<     
---
> 
569c591
<      */    
---
>      */
572c594
<                 
---
> 
575,576c597,598
<     
<     
---
> 
> 
579c601
<      */    
---
>      */
582c604
<         
---
> 
584c606
<         
---
> 
586,587c608,609
<         
<         return newName; 
---
> 
>         return newName;
589c611
<     
---
> 
592,593c614,615
<      * @return named range index 
<      */    
---
>      * @return named range index
>      */
614c636
<      */    
---
>      */
617c639
<         workbook.removeName(index);        
---
>         workbook.removeName(index);
629c651
< 	
---
> 
632c654
<      */    
---
>      */
635,637c657,659
<         
<         removeName(index);          
<         
---
> 
>         removeName(index);
> 
639c661
<     
---
> 

