library test;
import self as self;
import "dart:core" as core;

static method foo(dynamic obj) → core::String
  return obj is core::String ?{core::String} obj{core::String}.{core::String::toUpperCase}() : null;
static method main() → dynamic {}
