anchor.diff:  	      (the event (lock-port in obj)))))
   
   
  -(defmethod output-events ((sim simulator) (out out-port) (obj object))
  +(defmethod output ((sim simulator) (out out-port) (obj object))
     "Contract: simulator out-port object -> events
   
      Purpose: to create a new event that will call handle-input on the
  
positive.code: 
  
  (defmethod lock-port ((p port) (obj object))
    "Contract: port object -> (or unlock-event nil)
  
     Purpose: to lock the port and decide when unlock it.
  
  
negative.code: 
  (defmethod access-port ((sim simulator) (in in-port) (obj object))
    "Contract: simulator in-port object -> (or simulator nil)
                                           (or event nil)
  
     Purpose: to retrieve the owner of in-port.
  
  