code: public SingleAssetEuropeanOptionProductDescriptor getDescriptor(LocalDate referenceDate, int index) throws ArrayIndexOutOfBoundsException{
  		LocalDate maturityDate = FloatingpointDate.getDateFromFloatingPointDate(referenceDate, maturity);
  		if(index >= strikes.length) {
  			throw new ArrayIndexOutOfBoundsException("Strike index out of bounds");
  		}else {
  			return new SingleAssetEuropeanOptionProductDescriptor(underlyingName, maturityDate, strikes[index]);
  		}
  	}
docs: Return a product descriptor for a specific strike.
  
  @param referenceDate The reference date (translating the maturity floating point date to dates.
  @param index The index corresponding to the strike grid.
  @return a product descriptor for a specific strike.
  @throws ArrayIndexOutOfBoundsException Thrown if index is out of bound.