ur socket don't work so well
it lags a lot and sometimes it will say something other times it will only say *** [GMH]
no need to use so many vars be them local or global.
try using sockmark more
i remember posting a gives me hope socket as a comment on this snippet
http://www.hawkee.com/snippet/5880/ i tested it and it still works