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

static field core::bool a_equal = 1.0.{core::num::==}(2.0);
static field core::bool a_notEqual = !1.0.{core::num::==}(2.0);
static field core::double a_add = 1.0.{core::double::+}(2.0);
static field core::double a_subtract = 1.0.{core::double::-}(2.0);
static field core::double a_multiply = 1.0.{core::double::*}(2.0);
static field core::double a_divide = 1.0.{core::double::/}(2.0);
static field core::int a_floorDivide = 1.0.{core::double::~/}(2.0);
static field core::bool a_greater = 1.0.{core::num::>}(2.0);
static field core::bool a_less = 1.0.{core::num::<}(2.0);
static field core::bool a_greaterEqual = 1.0.{core::num::>=}(2.0);
static field core::bool a_lessEqual = 1.0.{core::num::<=}(2.0);
static field core::double a_modulo = 1.0.{core::double::%}(2.0);
static method main() → dynamic {
  self::a_equal;
  self::a_notEqual;
  self::a_add;
  self::a_subtract;
  self::a_multiply;
  self::a_divide;
  self::a_floorDivide;
  self::a_greater;
  self::a_less;
  self::a_greaterEqual;
  self::a_lessEqual;
  self::a_modulo;
}
