private void search(int startIndex, int endIndex)
	{
		while (this.data[startIndex].getValue() == this.data[endIndex].getValue())
		{
			startIndex --; endIndex ++;
			
			if (startIndex < 0)
			{
				break;
			}
			
			if (endIndex >= this.dataSize)
			{
				break;
			}
			
			if (this.data[startIndex].getValue() != this.data[endIndex].getValue())
			{
				break;
			}
		}
		
		startIndex++; endIndex --;
		
		if (endIndex - startIndex + 1 > this.answer.getValue())
		{
			//updates answer
			this.answer.setValue(endIndex - startIndex + 1);
			
			this.answer.setStartPosition(this.data[startIndex].getOriginalPosition());
			
			this.answer.setEndPosition(this.data[endIndex].getOriginalPosition());
		}
	}