it('should get returned by operations after setting .safeIntegers()', function () {
		const int = Integer.fromBits(4243423, 234234234);
		let stmt = db.prepare('SELECT a FROM entries').pluck();
		expect(stmt.get()).to.equal(1006028374637854700);
		expect(stmt.safeIntegers().get()).to.deep.equal(int);
		expect(stmt.get()).to.deep.equal(int);
		expect(stmt.safeIntegers(false).get()).to.equal(1006028374637854700);
		expect(stmt.get()).to.equal(1006028374637854700);
		expect(stmt.safeIntegers(true).get()).to.deep.equal(int);
		expect(stmt.get()).to.deep.equal(int);
		
		stmt = db.prepare('SELECT b FROM entries').pluck();
		expect(stmt.get()).to.equal(1006028374637854700);
		expect(stmt.safeIntegers().get()).to.equal(1006028374637854700);
		
		stmt = db.prepare('SELECT c FROM entries').pluck();
		expect(stmt.get()).to.equal('1006028374637854687');
		expect(stmt.safeIntegers().get()).to.equal('1006028374637854687');
		
		let lastRowid = db.prepare('SELECT rowid FROM entries ORDER BY rowid DESC').pluck().get();
		stmt = db.prepare('INSERT INTO entries VALUES (?, ?, ?)');
		expect(stmt.run(int, int, int).lastInsertROWID).to.equal(++lastRowid);
		expect(stmt.safeIntegers().run(int, int, int).lastInsertROWID).to.deep.equal(Integer(++lastRowid));
		expect(stmt.run(int, int, int).lastInsertROWID).to.deep.equal(Integer(++lastRowid));
		expect(stmt.safeIntegers(false).run(int, int, int).lastInsertROWID).to.equal(++lastRowid);
		
		const trans = db.transaction(['INSERT INTO entries VALUES (?, ?, ?)']);
		expect(trans.run(int, int, int).lastInsertROWID).to.equal(++lastRowid);
		expect(trans.safeIntegers().run(int, int, int).lastInsertROWID).to.deep.equal(Integer(++lastRowid));
		expect(trans.run(int, int, int).lastInsertROWID).to.deep.equal(Integer(++lastRowid));
		expect(trans.safeIntegers(false).run(int, int, int).lastInsertROWID).to.equal(++lastRowid);
	});
		db.register(function returnsInteger(a) { return Integer(a + a); });