Demo for query storing

Change-Id: I947bcac841992c3f6cfd01ab337c265b0d01cb70
diff --git a/node_modules/to-through/LICENSE b/node_modules/to-through/LICENSE
new file mode 100644
index 0000000..b8fc743
--- /dev/null
+++ b/node_modules/to-through/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2017 Blaine Bublitz <blaine.bublitz@gmail.com>, Eric Schoffstall <yo@contra.io> and other contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/node_modules/to-through/README.md b/node_modules/to-through/README.md
new file mode 100644
index 0000000..0c02b7c
--- /dev/null
+++ b/node_modules/to-through/README.md
@@ -0,0 +1,56 @@
+<p align="center">
+  <a href="http://gulpjs.com">
+    <img height="257" width="114" src="https://raw.githubusercontent.com/gulpjs/artwork/master/gulp-2x.png">
+  </a>
+</p>
+
+# to-through
+
+[![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Build Status][travis-image]][travis-url] [![AppVeyor Build Status][appveyor-image]][appveyor-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Gitter chat][gitter-image]][gitter-url]
+
+Wrap a ReadableStream in a TransformStream.
+
+## Usage
+
+```js
+var from = require('from2');
+var concat = require('concat-stream');
+var toThrough = require('to-through');
+
+var readable = from([' ', 'hello', ' ', 'world']);
+
+// Can be used as a Readable or Transform
+var maybeTransform = toThrough(readable);
+
+from(['hi', ' ', 'there', ','])
+  .pipe(maybeTransform)
+  .pipe(concat(function(result) {
+    // result.toString() === 'hi there, hello world'
+  }));
+```
+
+## API
+
+### `toThrough(readableStream)`
+
+Takes a `readableStream` as the only argument and returns a `through2` stream. If the returned stream is piped before `nextTick`, the wrapped `readableStream` will not flow until the upstream is flushed. If the stream is not piped before `nextTick`, it is ended and flushed (acting as a proper readable).
+
+## License
+
+MIT
+
+[downloads-image]: http://img.shields.io/npm/dm/to-through.svg
+[npm-url]: https://npmjs.com/package/to-through
+[npm-image]: http://img.shields.io/npm/v/to-through.svg
+
+[travis-url]: https://travis-ci.org/gulpjs/to-through
+[travis-image]: http://img.shields.io/travis/gulpjs/to-through.svg?label=travis-ci
+
+[appveyor-url]: https://ci.appveyor.com/project/gulpjs/to-through
+[appveyor-image]: https://img.shields.io/appveyor/ci/gulpjs/to-through.svg?label=appveyor
+
+[coveralls-url]: https://coveralls.io/r/gulpjs/to-through
+[coveralls-image]: http://img.shields.io/coveralls/gulpjs/to-through/master.svg
+
+[gitter-url]: https://gitter.im/gulpjs/gulp
+[gitter-image]: https://badges.gitter.im/gulpjs/gulp.png
diff --git a/node_modules/to-through/index.js b/node_modules/to-through/index.js
new file mode 100644
index 0000000..c71a677
--- /dev/null
+++ b/node_modules/to-through/index.js
@@ -0,0 +1,60 @@
+'use strict';
+
+var through = require('through2');
+
+function forward(chunk, enc, cb) {
+  cb(null, chunk);
+}
+
+function toThrough(readable) {
+
+  var opts = {
+    objectMode: readable._readableState.objectMode,
+    highWaterMark: readable._readableState.highWaterMark,
+  };
+
+  function flush(cb) {
+    var self = this;
+
+    readable.on('readable', onReadable);
+    readable.on('end', cb);
+
+    function onReadable() {
+      var chunk;
+      while (chunk = readable.read()) {
+        self.push(chunk);
+      }
+    }
+  }
+
+  var wrapper = through(opts, forward, flush);
+
+  var shouldFlow = true;
+  wrapper.once('pipe', onPipe);
+  wrapper.on('newListener', onListener);
+  readable.on('error', wrapper.emit.bind(wrapper, 'error'));
+
+  function onListener(event) {
+    // Once we've seen the data or readable event, check if we need to flow
+    if (event === 'data' || event === 'readable') {
+      maybeFlow();
+      this.removeListener('newListener', onListener);
+    }
+  }
+
+  function onPipe() {
+    // If the wrapper is piped, disable flow
+    shouldFlow = false;
+  }
+
+  function maybeFlow() {
+    // If we need to flow, end the stream which triggers flush
+    if (shouldFlow) {
+      wrapper.end();
+    }
+  }
+
+  return wrapper;
+}
+
+module.exports = toThrough;
diff --git a/node_modules/to-through/package.json b/node_modules/to-through/package.json
new file mode 100644
index 0000000..e2a6dff
--- /dev/null
+++ b/node_modules/to-through/package.json
@@ -0,0 +1,85 @@
+{
+  "_from": "to-through@^2.0.0",
+  "_id": "to-through@2.0.0",
+  "_inBundle": false,
+  "_integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=",
+  "_location": "/to-through",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "to-through@^2.0.0",
+    "name": "to-through",
+    "escapedName": "to-through",
+    "rawSpec": "^2.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^2.0.0"
+  },
+  "_requiredBy": [
+    "/vinyl-fs"
+  ],
+  "_resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz",
+  "_shasum": "fc92adaba072647bc0b67d6b03664aa195093af6",
+  "_spec": "to-through@^2.0.0",
+  "_where": "C:\\Users\\marcr\\Desktop\\KorAp\\Git\\Kalamar\\node_modules\\vinyl-fs",
+  "author": {
+    "name": "Gulp Team",
+    "email": "team@gulpjs.com",
+    "url": "http://gulpjs.com/"
+  },
+  "bugs": {
+    "url": "https://github.com/gulpjs/to-through/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Blaine Bublitz",
+      "email": "blaine.bublitz@gmail.com"
+    }
+  ],
+  "dependencies": {
+    "through2": "^2.0.3"
+  },
+  "deprecated": false,
+  "description": "Wrap a ReadableStream in a TransformStream.",
+  "devDependencies": {
+    "eslint": "^1.10.3",
+    "eslint-config-gulp": "^2.0.0",
+    "expect": "^1.20.2",
+    "istanbul": "^0.4.3",
+    "istanbul-coveralls": "^1.0.3",
+    "jscs": "^2.4.0",
+    "jscs-preset-gulp": "^1.0.0",
+    "mississippi": "^1.3.0",
+    "mocha": "^3.2.0"
+  },
+  "engines": {
+    "node": ">= 0.10"
+  },
+  "files": [
+    "LICENSE",
+    "index.js"
+  ],
+  "homepage": "https://github.com/gulpjs/to-through#readme",
+  "keywords": [
+    "transform",
+    "readable",
+    "through",
+    "wrap"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "to-through",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/gulpjs/to-through.git"
+  },
+  "scripts": {
+    "cover": "istanbul cover _mocha --report lcovonly",
+    "coveralls": "npm run cover && istanbul-coveralls",
+    "lint": "eslint index.js test/ && jscs index.js test/",
+    "pretest": "npm run lint",
+    "test": "mocha --async-only"
+  },
+  "version": "2.0.0"
+}