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

class Class extends core::Object {
  field self::Class? field;
  constructor •([self::Class? field = #C1]) → self::Class
    : self::Class::field = field, super core::Object::•()
    ;
  get getter1() → self::Class
    return this;
  get getter2() → self::Class?
    return this.{self::Class::field}{self::Class?};
}
static method main() → dynamic {
  self::Class? c = new self::Class::•();
  let final self::Class? #t1 = c in #t1 == null ?{self::Class?} null : let final self::Class? #t2 = #t1{self::Class}.{self::Class::getter1}{self::Class}.{self::Class::getter2}{self::Class?} in #t2 == null ?{self::Class?} null : let final self::Class? #t3 = #t2{self::Class}.{self::Class::getter1}{self::Class}.{self::Class::getter2}{self::Class?} in #t3 == null ?{self::Class?} null : #t3{self::Class}.{self::Class::field} = c{self::Class};
}

constants  {
  #C1 = null
}
