late
int lateTopLevelField1 = 123;
class Class<T> {
  static late int ;
  lateStaticField1 = 87;
  static late int ;
  lateStaticField2 = 42;
  static staticMethod() {}
  late
  int lateInstanceField = 16;
  final T field;
  late
  T lateGenericField1 = field;
  late
  T lateGenericField2 = field;
  Class(this.field);
  instanceMethod(T value) {}
}
extension Extension<T> on Class<T> {
  static late int ;
  lateExtensionField1 = 87;
  static late int ;
  lateExtensionField2 = 42;
  static staticMethod() {}
}
main() {}
expect(expected, actual) {}
