// @dart = 2.9
import 'dart:async' show FutureOr;
import 'dart:collection' show LinkedHashMap, LinkedHashSet;

Future<Iterable<int>> iterablefun() async => {};
Future<LinkedHashMap<int, bool>> lhmfun() async => {};
Future<LinkedHashSet<int>> lhsfun() async => {};
Future<Map<int, bool>> mapfun() async => {};
Future<Set<int>> setfun() async => {};
FutureOr<Iterable<int>> iterablefun2() => {};
FutureOr<LinkedHashMap<int, bool>> lhmfun2() => {};
FutureOr<LinkedHashSet<int>> lhsfun2() => {};
FutureOr<Map<int, bool>> mapfun2() => {};
FutureOr<Set<int>> setfun2() => {};
main() async {}
