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

static field core::String* x = #C1;
static field core::String* y = #C2;
static field core::String* z = #C3;
static method identity<T extends core::Object* = dynamic>(self::identity::T* t) → self::identity::T*
  return t;
static method identityObject<T extends core::Object* = dynamic>(self::identityObject::T* t) → self::identityObject::T*
  return t;
static method identityList<T extends core::List<self::identityList::T>* = dynamic>(self::identityList::T* t) → self::identityList::T*
  return t;
static method main() → dynamic {}

constants  {
  #C1 = tearoff self::identity
  #C2 = tearoff self::identityObject
  #C3 = tearoff self::identityList
}
