http://pastebin.com/YzAzm7DS