Type merging