Hopper solution, and it will work almost entirely!

Printable View