http://pastebin.com/Ju95QKPj