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

  static method foo() → dynamic {
    dart.core::print("foo!");
  }
}
library from "org-dartlang-test:///main.dart" as main {

  import "org-dartlang-test:///lib.dart" deferred as foo;

  static method main() → dynamic {
    () →* dart.async::Future<dynamic>* f = #C1;
    f(){() →* dart.async::Future<dynamic>*};
    dart.core::print("Done");
  }
  static method _#loadLibrary_foo() → dart.async::Future<dynamic>*
    return LoadLibrary(foo);
}
constants  {
  #C1 = static-tearoff main::_#loadLibrary_foo
}
