Using Type Parameters:
Generic type parameters can be used in function signatures, return types, and within function bodies.
Example:
public fun pair<T>(a: T, b: T): vector<T> {
vector::push_back(&mut vector::empty<T>(), a);
vector::push_back(&mut vector::empty<T>(), b);
}