else { int[] copiedRowSpans = new int[copiedCells.size( )]; int[] originalPositions = new int[originalCells.size( )]; int[] originalRowSpans = new int[originalCells.size( )];    for ( int i = 0; i < originalCells.size( ); i++ ) { CellContextInfo contextInfo = (CellContextInfo) originalCells .get( i ); CellHandle cell = contextInfo.getCell( ).handle( adapter.getModule( ) );  originalPositions[i] = ColumnBandAdapter .findCellPosition( cell ); originalRowSpans[i] = contextInfo.getRowSpan( ); }  for ( int i = 0; i < copiedCells.size( ); i++ ) { CellContextInfo contextInfo = (CellContextInfo) copiedCells .get( i ); copiedRowSpans[i] = contextInfo.getRowSpan( ); }  insertPosition = getIndexToAdd( originalPositions, originalRowSpans, copiedRowSpans ); }
	private int[] getInsertPosition( List copiedCells, List originalCells,			int columnIndex, boolean isInsert )	{		// insert column index that is from 1.		int[] insertPosition = null;		int columnCount = adapter.getColumnCount( );		if ( isInsert && ( columnIndex == 0 || columnIndex == columnCount - 1 ) )		{			insertPosition = new int[copiedCells.size( )];			if ( columnIndex == 0 )				Arrays.fill( insertPosition, 0 );			else				Arrays.fill( insertPosition, -1 );		}		else		{			int[] copiedRowSpans = new int[copiedCells.size( )];			int[] originalPositions = new int[originalCells.size( )];			int[] originalRowSpans = new int[originalCells.size( )];			// remove cells first.			for ( int i = 0; i < originalCells.size( ); i++ )			{				CellContextInfo contextInfo = (CellContextInfo) originalCells						.get( i );				CellHandle cell = contextInfo.getCell( ).handle(						adapter.getModule( ) );				originalPositions[i] = ColumnBandAdapter						.findCellPosition( cell );				originalRowSpans[i] = contextInfo.getRowSpan( );			}			for ( int i = 0; i < copiedCells.size( ); i++ )			{				CellContextInfo contextInfo = (CellContextInfo) copiedCells						.get( i );				copiedRowSpans[i] = contextInfo.getRowSpan( );			}			insertPosition = getIndexToAdd( originalPositions,					originalRowSpans, copiedRowSpans );		}		return insertPosition;	}