That was pretty clean.....
It's made a bit messier by the fact that I'd started pulling off bits for a breakdown.... The duplicated chunk in the middle near the top was purely for the breakdown - only one of those bits was needed for the shot. And there are a few other branches just for the breakdown, but on the whole that's the comp.
There's some bad practice in there too... Down near the bottom are 3 IAdd nodes in a row all with the same mask input...

I really should have just done a KeyMix after them.
I did a lot of precomps in there. Quite a few of the ignored (with red line through) nodes are FileOut nodes with a FileIn next to them.