def _killBackref(receiver, senderkey):
 receiverkey = id(receiver)
 set = sendersBack.get(receiverkey, ())
 while (senderkey in set):
  try:
   set.remove(senderkey)
  except:
   break
 if (not set):
  try:
   del sendersBack[receiverkey]
  except KeyError:
   pass
 return True

def _killBackref ( receiver , senderkey ) : receiverkey = id ( receiver ) set = sendersBack . get ( receiverkey , ( ) ) while ( senderkey in set ) : try : set . remove ( senderkey ) except : break if ( not set ) : try : del sendersBack [ receiverkey ] except KeyError : pass return True
do the actual removal of back reference from receiver to senderkey .