avoid Function1 object allocation