library test;

class A {}

class B extends A {
  A operator +(C v) => throw '';
  B operator -(int i) => throw '';
  B operator *(B v) => throw '';
  C operator &(A v) => throw '';
}

class C extends B {}

T f<T>() => throw '';

class Test {
  B member;
  B? member2;
  Test(this.member, this.member2);
  void test() {}
}

main() {}
