(Observable.Range(1, 100).RandomInt32IO() .Select(rnd => (f…
(Observable.Range(1, 100).RandomInt32IO()
.Select(rnd => (from car in Observable.Generate((Id: rnd.Item1, Location: (X: 0, Y: 0)),
car => car.Id < 10, car => (Id: car.Id, Location: (car.Location.X += rnd.Item2.Item1, car.Location.Y += rnd.Item2.Item1)),
car => car, car => TimeSpan.FromMilliseconds(rnd.Item1), Scheduler.Immediate)
group car by car.Id into g select g))).Subscribe(x => x.DumpLatest()).Dump()