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::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
  ;
