partially merging with zero-copy branch