def _removeReceiver(receiver):
 if (not sendersBack):
  return False
 backKey = id(receiver)
 for senderkey in sendersBack.get(backKey, ()):
  try:
   signals = connections[senderkey].keys()
  except KeyError as err:
   pass
  else:
   for signal in signals:
    try:
     receivers = connections[senderkey][signal]
    except KeyError:
     pass
    else:
     try:
      receivers.remove(receiver)
     except Exception as err:
      pass
    _cleanupConnections(senderkey, signal)
 try:
  del sendersBack[backKey]
 except KeyError:
  pass

def _removeReceiver ( receiver ) : if ( not sendersBack ) : return False backKey = id ( receiver ) for senderkey in sendersBack . get ( backKey , ( ) ) : try : signals = connections [ senderkey ] . keys ( ) except KeyError as err : pass else : for signal in signals : try : receivers = connections [ senderkey ] [ signal ] except KeyError : pass else : try : receivers . remove ( receiver ) except Exception as err : pass _cleanupConnections ( senderkey , signal ) try : del sendersBack [ backKey ] except KeyError : pass
remove receiver from connections .