pub struct Heap[T] {
	mut:
	arr []&T
}

fn (mut h Heap[T]) insert(mut element T, pos int) {
	h[pos] = element
}

fn main() {
	mut h := &Heap[int]{
		arr: []&int{cap: 10}
	}
	mut a := 3
	h.insert(mut &a, 0)
	dump(h)
}
