use each instead of tap