No, there is no extra Merge in my solution. I simply connected Merge and Merge2 directly. Then IF is connected to Merge2’s 2nd input. That link is triggered when there is no need to create a company. Merging Contact in Merge2 node with itself (the same Contact on both inputs) automatically removes duplicated properties. If the “false” part of IF gets engaged, then the Contact data is enriched with Company data in Merge2.
In short, the 2nd input of Merge2 gets either Contact (if no Company needed) or Company.