question: public void remove ( Id person ) { if ( sittingPersons . remove ( person ) ) { if ( standingPersons . size ( ) > 0 ) { Id sitter = rule . giveSeatOnLeave ( person , vehicle , sittingPersons . size ( ) , Collections . unmodifiableList ( standingPersons ) ) ; if ( sitter != null ) { standingPersons . remove ( sitter ) ; sittingPersons . add ( sitter ) ; } } } else { standingPersons . remove ( person ) ; } }
target:  This method removes a person from the vehicle. If the person is currently sitting and there are people standing, this may trigger the event that someone who was standing will sit. (Using the SeatAssignmentRule)