type T is range <>
