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

typedef F = (core::int*) →* core::Iterable<core::num*>*;
typedef G = (core::double*) →* core::List<core::int*>*;
static method generic<T extends core::Object* = dynamic>((self::generic::T*) →* dynamic a, (self::generic::T*) →* dynamic b) → self::generic::T*
  ;
static method main() → dynamic
  ;
