I'm confused with this change. Is there anything else other than code reorganization? If not, then the current version is desirable, as it makes more clear the various branches returning values.