// @dart = 2.9
import 'dart:async';

class Class {}

dynamic returnDynamic() => new Class();
Class returnClass() => new Class();
Future<dynamic> returnFutureDynamic() async => new Class();
Future<Class> returnFutureClass() async => new Class();
Stream<FutureOr<Class>> error() async* {}
Stream<FutureOr<Class>> stream() async* {}
main() async {}
