Code came from:

Aquameta, www.aquameta.com
Steven Skoczen, GoodCloud http://www.agoodcloud.com