> data Vect : Nat -> Type -> Type where > Nil : Vect Z a > (::) : a -> Vect k a -> Vect (S k) a > %name Vect xs, ys, zs > dupAll : Vect n a -> Vect n (a, a) > dupAll xs = zipHere xs xs > where > zipHere : forall n . Vect n a -> Vect n b -> Vect n (a, b)