Merge skeletons itself

I was struggling a lot for kind of solution for the common problem (as I thought first) to be able to establish a mixed versions of different skeleton meshes with different skeleton structures and animations accordingly.

I prepared this image to explain the problem a little bit better.

On the image above you can see that these skeletons are all sharing the bottom part and got some modifications for the upper part.

As far as these skeletons are sharing the same parts, for me it’s sounds logical to reuse common parts and add other parts as additional ones into same skeleton, actually just merge them together without replication of a common parts. I got a feeling that it could be done using exact same names for the common bones and different names for the custom bones. As far as for Unreal it will be clear to use one skeleton i think that this should work perfectly fine.

I guess I could handle this by separating different bone versions into next layers and having them all in the one project, but I’m just wondering is there any more clear way to do this? A specially would like to see some Unreal integrated method which could provide me with such merging functionality. Or maybe there are some other options to do this more efficiently?