if (can) optmization