main = <No Member>;
library from "package:example/a.dart" as a {

  static method a() → dynamic {
    a::la1();
  }
  static method la1() → dynamic {
    dart.core::print("Hello from v0.1.0");
  }
}
library from "package:example/b.dart" as b {

  import "package:example/a.dart";

  static method b() → dynamic {
    a::a();
  }
}
library from "org-dartlang-test:///main.dart" as main {

  import "package:example/b.dart";

  static method main() → dynamic {
    dart.core::print("hello");
    b::b();
  }
}
