• Apologies for my wholistic approach and for quoting MSDN.