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

class E extends core::Object {
  synthetic constructor •() → self::E
    : super core::Object::•();
  method foo() → dynamic {
    super.[]=(4, 42);
    let final dynamic #t1 = 4 in super.[]=(#t1, super.[](#t1).+(5));
    return super.[](2);
  }
}
static method beforeTestMissingTry() → dynamic {
  throw core::_genericNoSuchMethod(null, #testMissingTry, <dynamic>[], <dynamic, dynamic>{}, null);
}
static method testMissingTry() → dynamic
  invalid-statement;
static method main() → dynamic {}
