Replacement Universal Joint for Libman Freedom Spray Mop

I like to hang my mop in the coat closet to keep it hidden away -- but it also falls from where I hang it frequently. It fell too many times and finally broke the universal joint that allows it to swivel and connects the mop head from the handle. I decided that in a 3D printing household, things don't break, they just need fixing and that the mop ought to stay functional. This part is designed as a copy of the original manufactured joint, although I'm sure someone could make a remix and beef up the weak points and make a version that will never break again.

Designed using Inventor, file is attached for easy remixing.