func Insert[T any](a *[]T, i int, elem T) {
	var zero T
	*a = append(*a, zero /* use the zero value of the element type */)
	copy((*a)[i+1:], (*a)[i:])
	(*a)[i] = elem
}
// Insert inserts elem into a at index i.
Insert inserts elem into a at index i.
// Insert inserts elem into a at index i .
func Insert[T any](a *[]T, i int, elem T) {
	var zero T
	*a = append(*a, zero )
	copy((*a)[i+1:], (*a)[i:])
	(*a)[i] = elem
}
func Insert [ T any ] ( a * [ ] T , i int , elem T ) { var zero T * a = append ( * a , zero ) copy ( ( * a ) [ i + 1 : ] , ( * a ) [ i : ] ) ( * a ) [ i ] = elem }
Insert inserts elem into a at index i.
Insert inserts elem into a at index i .
/* use the zero value of the element type */