library;
//
// Problems in library:
//
// pkg/front_end/testcases/tabs.dart:9:8: Error: Getter not found: 'one'.
// 	print(one);
// 	      ^^^
//
// pkg/front_end/testcases/tabs.dart:10:9: Error: Getter not found: 'two'.
// 		print(two);
// 		      ^^^
//
// pkg/front_end/testcases/tabs.dart:11:11: Error: Getter not found: 'three'.
// 		  print(three);
// 		        ^^^^^
//
// pkg/front_end/testcases/tabs.dart:12:12: Error: Getter not found: 'four'.
// 	   	print(four);
// 	   	      ^^^^
//
// pkg/front_end/testcases/tabs.dart:13:14: Error: Getter not found: 'five'.
// 	   	  print(five);
// 	   	        ^^^^
//
import self as self;
import "dart:core" as core;

static method test() → dynamic {
  core::print(invalid-expression "pkg/front_end/testcases/tabs.dart:9:8: Error: Getter not found: 'one'.
\tprint(one);
\t      ^^^");
  core::print(invalid-expression "pkg/front_end/testcases/tabs.dart:10:9: Error: Getter not found: 'two'.
\t\tprint(two);
\t\t      ^^^");
  core::print(invalid-expression "pkg/front_end/testcases/tabs.dart:11:11: Error: Getter not found: 'three'.
\t\t  print(three);
\t\t        ^^^^^");
  core::print(invalid-expression "pkg/front_end/testcases/tabs.dart:12:12: Error: Getter not found: 'four'.
\t   \tprint(four);
\t   \t      ^^^^");
  core::print(invalid-expression "pkg/front_end/testcases/tabs.dart:13:14: Error: Getter not found: 'five'.
\t   \t  print(five);
\t   \t        ^^^^");
}
static method main() → dynamic {}
