his.gapKey + 1;
				k.eventKey = 0;
				return k;
			}

			nextKey() {
				const k = new Key();
				k.gapKey = this.gapKey;
				k.eventKey = this.eventKey + 1;
				return k;
			}

			previousKey() {
				const k = new Key();
				k.gapKey = this.gapKey;
				k.eventKey = this.eventKey - 1;
				return k;
			}

			clone() {
				const k = new Key();
				k.gapKey = this.gapKey;
				k.eventKey = this.eventKey;	
				return k;
			}
		}

		function reqAsPromise(req) {
		    return new Promise((resolve, reject) => {
		