type Vec(size: int, cap: int, buf: [T]); type Node(value: T, next: Option, prev: Option); type Queue(data: Vec>);