public void addFunnel(List<Long> funnel) throws HiveException {
  if (elements.isEmpty()) {
    elements.addAll(funnel);
  }
 else {
    if (elements.size() != funnel.size()) {
      throw new UDFArgumentTypeException(0,"Funnels must be of the same size to merge!");
    }
    for (int i=0; i < funnel.size(); i++) {
      elements.set(i,(funnel.get(i) + elements.get(i)));
    }
  }
}

public void addFunnel ( List < Long > funnel ) throws HiveException { if ( elements . isEmpty ( ) ) { elements . addAll ( funnel ) ; } else { if ( elements . size ( ) != funnel . size ( ) ) { throw new UDFArgumentTypeException ( 0 , "Funnels must be of the same size to merge!" ) ; } for ( int i = 0 ; i < funnel . size ( ) ; i ++ ) { elements . set ( i , ( funnel . get ( i ) + elements . get ( i ) ) ) ; } } }
add a funnel to the aggregate .
