Demo for query storing

Change-Id: I947bcac841992c3f6cfd01ab337c265b0d01cb70
diff --git a/node_modules/flagged-respawn/lib/is-v8flags.js b/node_modules/flagged-respawn/lib/is-v8flags.js
new file mode 100644
index 0000000..34df9d2
--- /dev/null
+++ b/node_modules/flagged-respawn/lib/is-v8flags.js
@@ -0,0 +1,13 @@
+function isV8flags(flag, v8flags) {
+  return v8flags.indexOf(replaceSeparatorsFromDashesToUnderscores(flag)) >= 0;
+}
+
+function replaceSeparatorsFromDashesToUnderscores(flag) {
+  var arr = /^(-+)(.*)$/.exec(flag);
+  if (!arr) {
+    return flag;
+  }
+  return arr[1] + arr[2].replace(/\-/g, '_');
+}
+
+module.exports = isV8flags;
diff --git a/node_modules/flagged-respawn/lib/remover.js b/node_modules/flagged-respawn/lib/remover.js
new file mode 100644
index 0000000..3d194fa
--- /dev/null
+++ b/node_modules/flagged-respawn/lib/remover.js
@@ -0,0 +1,13 @@
+var isV8flags = require('./is-v8flags');
+
+module.exports = function(flags, argv) {
+  var args = argv.slice(0, 1);
+  for (var i = 1, n = argv.length; i < n; i++) {
+    var arg = argv[i];
+    var flag = arg.split('=')[0];
+    if (!isV8flags(flag, flags)) {
+      args.push(arg);
+    }
+  }
+  return args;
+};
diff --git a/node_modules/flagged-respawn/lib/reorder.js b/node_modules/flagged-respawn/lib/reorder.js
new file mode 100644
index 0000000..125fc6c
--- /dev/null
+++ b/node_modules/flagged-respawn/lib/reorder.js
@@ -0,0 +1,18 @@
+var isV8flags = require('./is-v8flags');
+
+module.exports = function(flags, argv) {
+  if (!argv) {
+    argv = process.argv;
+  }
+  var args = [argv[1]];
+  argv.slice(2).forEach(function(arg) {
+    var flag = arg.split('=')[0];
+    if (isV8flags(flag, flags)) {
+      args.unshift(arg);
+    } else {
+      args.push(arg);
+    }
+  });
+  args.unshift(argv[0]);
+  return args;
+};
diff --git a/node_modules/flagged-respawn/lib/respawn.js b/node_modules/flagged-respawn/lib/respawn.js
new file mode 100644
index 0000000..c7e40fe
--- /dev/null
+++ b/node_modules/flagged-respawn/lib/respawn.js
@@ -0,0 +1,16 @@
+var spawn = require('child_process').spawn;
+
+module.exports = function(argv) {
+  var child = spawn(argv[0], argv.slice(1), { stdio: 'inherit' });
+  child.on('exit', function(code, signal) {
+    process.on('exit', function() {
+      /* istanbul ignore if */
+      if (signal) {
+        process.kill(process.pid, signal);
+      } else {
+        process.exit(code);
+      }
+    });
+  });
+  return child;
+};