avoid create same anonymous Function1 classes