added pseudo-realtime