these two branches seem to have the same code inside, why there's two branches and not just one if with || condition?