Boolean Union keeps failing!

I’m trying to boolean these objects with the ring but it keeps failing.
Please Help!

agnostic3.3dm (3.7 MB)

You had duplicated objects and some naked surfaces on top.
_SelDup and then Boolean Union works just fine
agnostic3.3dm (1.4 MB)

Thank you very much!