Update by David Tran 07-17-2013 of originial angelhack