// export abstract class Iterator<T> {
//   abstract get done(): bool;
//   abstract next(): T;
// }