This file was autogenerated from running the shaker test suite.
To update this file, either copy the output from a failing test or run
pkg/front_end/tool/fasta testing shaker -DupdateExpectations=true
----- pkg/front_end/testcases/shaker/target_top_class.dart
library;
import self as self;
import "lib/targets_top.dart" as tar;

static field tar::MyClass c;

----- external pkg/front_end/testcases/shaker/lib/targets_top.dart
library;
import self as self;
import "dart:core" as core;

class MyClass extends core::Object {
}

