code: @Override
      public Object invoke(Object[] allVals) throws InvocationTargetException {
          Object[] vals;
          Object tmp;
  
          vals = new Object[paraParaCount];
          System.arraycopy(allVals, idx, vals, 0, vals.length);
          tmp = para.invoke(vals);
  
          vals = new Object[baseParaCount];
          System.arraycopy(allVals, 0, vals, 0, idx);
          vals[idx] = tmp;
          System.arraycopy(allVals, idx + paraParaCount, vals, idx + 1, vals.length - (idx + 1));
  
          return base.invoke(vals);
      }
docs: Invokes the composed Functions. The computed argument
  is computed by a call to the parameter Function.
  @return  the result returned by the base Function.