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

import "package:expect/expect.dart";

static const field core::int var1 = self::function1(1, 2);
static const field core::int var1_1 = self::function1(2, 2);
static const field core::String var2 = self::function2();
static const field core::int var3 = self::function3();
static const field core::int var4 = self::function4();
static const field core::int var5 = self::function5();
static method function1(core::int a, core::int b) → core::int
  ;
static method function2() → core::String
  ;
static method function3() → core::int
  ;
static method function4() → core::int
  ;
static method function5() → core::int
  ;
static method main() → void
  ;
