proc vs if