Recursively Replace Materials with Material Instances

I’ve acquired several asset packs for the engine, but many of them are unnecessarily using **materials **for each and every mesh, rather than making use of instances, and it is slowing down my workflow quite substantially.

Is there anyway to quickly create material instances from a master material, and plug the previous materials textures into the corresponding instance parameters? (IE, albedo, roughness, normal textures.)
**As it is not practical for me to do it by hand. **