library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;

static field void y = self::run<void>(#C1);
static method run<T extends core::Object? = dynamic>(() → self::run::T% f) → self::run::T% {
  core::print("running");
  self::run::T% t = f(){() → self::run::T%};
  core::print("done running");
  return t;
}
static method printRunning() → void {
  core::print("running");
}
static method main() → dynamic {}

constants  {
  #C1 = static-tearoff self::printRunning
}
