import 'dart:math'; enum Car{Lada, BMW, Skoda} extension CarX on Car{ static List generateRandomCar(int n){ var rnd = Random(); return List.generate(n, (i) => Car.values[rnd.nextInt(Car.values.length)]); } } class NewCar{ final String name; double cost; NewCar(this.name, this.cost); String get info => 'New car: $name, cost: $cost'; } class OldCar extends NewCar{ final int mileage; OldCar( super.name, super.cost, { required this.mileage }); double costOldCar(cost, mileage){ return cost - (mileage * 0.7); } //String info() => 'Old car: $name, cost: $cost, mileage: $mileage'; } void main(){ asynchronous(); } Future asynchronous() async{ for (int i = 1; i < 5; i++) { List car = CarX.generateRandomCar(1); final auto = NewCar('$car', i * 1000000); await Future.delayed( const Duration(milliseconds: 10), () => print(auto.info), ); final oldAuto = OldCar('$car', i * 1000000 - (i * 100000 * 0.7), mileage: i * 100000); await Future.delayed( const Duration(milliseconds: 20), () => print(oldAuto.info), ); print(''); } }