This sounds like an old classic.
Well done.
Rob