function vs undefined