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

class C<T extends core::num = dynamic> extends core::Object {
  field self::C::T a = null;
  synthetic constructor •() → void
    : super core::Object::•()
    ;
  method op(core::double b) → void {
    core::double r1 = this.{self::C::a}.+(b);
    core::double r2 = this.{self::C::a}.-(b);
    core::double r3 = this.{self::C::a}.*(b);
    core::double r4 = this.{self::C::a}./(b);
  }
}
static method main() → dynamic {}
