All Code By Andrew Fiori,
If you modify or redistribute the code, compiled or otherwise please credit the creator of the code
Sources