main = main::main;
library from "org-dartlang-test:///main.dart" as main {

  class C extends dart.core::Object {
    synthetic constructor •() → main::C
      : super dart.core::Object::•()
      ;
  }
  extension _extension#0 on main::C {
    static field field5 = main::_extension#0|field5;
    static field field6 = main::_extension#0|field6;
    static field field7 = main::_extension#0|field7;
    static field field8 = main::_extension#0|field8;
  }
  late static field dart.core::int? field1 = 42;
  late static field dart.core::int? field2;
  late static final field dart.core::int? field3 = 42;
  late static final [setter] field dart.core::int? field4;
  late static field dart.core::int? _extension#0|field5 = 42;
  late static field dart.core::int? _extension#0|field6;
  late static final field dart.core::int? _extension#0|field7 = 42;
  late static final [setter] field dart.core::int? _extension#0|field8;
  static method main() → dynamic {
    main::field1 = 43;
    main::field2 = 42;
  }
}
