docs: def process_message(self,msg,sock):
      "serialize and deserialize"
      command=msg[0]
      try: f={'GET':self.get,'SET':self.set,'SUBSCRIBE':self.sub,'PUBLISH':self.pub,
        'PING':self.ping,'GETSET':self.getset,'EXPIRE':self.expire,'DEL':self.delete}[command]
      except KeyError: print msg; raise
      args=msg[1:]
      try: return f(sock,*args) if command in self.SOCK_COMMANDS else f(*args)
      except Exception as e:
        print e
        print msg
        return '-ERROR\r\n'