int? lateTopLevelField1Init() => 123;
late int;
?
lateTopLevelField1 = lateTopLevelField1Init();
class Class<T> {
  static int? lateStaticField1Init() => 87;
  static late int;
  operator? (){}
  lateStaticField1 = lateStaticField1Init();
  static int? lateStaticField2Init() => 42;
  static late int;
  operator? (){}
  lateStaticField2 = lateStaticField2Init();
  static staticMethod() {}
  int? lateInstanceFieldInit() => 16;
  late int;
  operator? (){}
  lateInstanceField = lateInstanceFieldInit();
  final T? field;
  T? lateGenericInstanceFieldInit() => field;
  late T;
  operator? (){}
  lateGenericInstanceField = lateGenericInstanceFieldInit();
  Class(this.field);
  instanceMethod(T? value) {}
}
extension Extension<T> (){}
on Class<T> (){}
main() {}
expect(expected, actual) {}
