http://git-wip-us.apache.org/repos/asf/incubator-myriad/blob/3ae7da2d/myriad-scheduler/src/main/resources/webapp/public/js/myriad.js
----------------------------------------------------------------------
diff --git a/myriad-scheduler/src/main/resources/webapp/public/js/myriad.js 
b/myriad-scheduler/src/main/resources/webapp/public/js/myriad.js
index 67ccab1..541aa07 100644
--- a/myriad-scheduler/src/main/resources/webapp/public/js/myriad.js
+++ b/myriad-scheduler/src/main/resources/webapp/public/js/myriad.js
@@ -5,25 +5,33 @@ var FlexComponent = require('./components/FlexComponent')
 var TasksComponent = require('./components/TasksComponent')
 var ConfigComponent = require('./components/ConfigComponent')
 var AboutComponent = require('./components/AboutComponent')
-var HelpComponent     = require('./components/HelpComponent')
-var ShutdownRmOnlyComponent = require('./components/ShutdownRmOnlyComponent')
+var HelpComponent = require('./components/HelpComponent')
 var ShutdownFrameworkComponent = 
require('./components/ShutdownFrameworkComponent')
 var ShutdownGracefulComponent = 
require('./components/ShutdownGracefulComponent')
+ 
+var ShutdownGracefulComponent = 
require('./components/ShutdownGracefulComponent')
 
 
 var Router = require('react-router')
+  , RouteHandler= Router.RouteHandler
+  , Route      = Router.Route
+  , Redirect   = Router.Redirect;
   , RouteHandler = Router.RouteHandler
+  , RouteHandler= Router.RouteHandler
   , Route = Router.Route
   , Redirect = Router.Redirect;
 
 var routes = (
   React.createElement(Route, {name: "myriad", path: "/", handler: Myriad}, 
-    React.createElement(Route, React.__spread({name: "rmDown",         path: 
"rmDown"},  this.props, {handler: ShutdownRmOnlyComponent})), 
     React.createElement(Route, React.__spread({name: "frameworkDown", path: 
"frameworkDown"},  this.props, {handler: ShutdownFrameworkComponent})), 
-    React.createElement(Route, React.__spread({name: "gracefulDown",   path: 
"gracefulDown"},  this.props, {handler: ShutdownGracefulComponent})), 
     React.createElement(Route, {name: "flex", path: "flex", handler: 
FlexComponent}), 
     React.createElement(Route, {name: "tasks", path: "tasks", handler: 
TasksComponent}), 
     React.createElement(Route, {name: "help",          path: "help",   
handler: HelpComponent}), 
+    React.createElement(Route, {name: "config",        path: "config",         
handler: ConfigComponent}), 
+    React.createElement(Route, {name: "about",         path: "/",      
handler: AboutComponent}), 
+    React.createElement(Redirect, {from: "myriad",     to: "about"})
+    React.createElement(Route, {name: "help",          path: "help",   
handler: HelpComponent}), 
+    React.createElement(Route, {name: "help", path: "help", handler: 
HelpComponent}), 
     React.createElement(Route, {name: "config", path: "config", handler: 
ConfigComponent}), 
     React.createElement(Route, {name: "about", path: "/", handler: 
AboutComponent}), 
     React.createElement(Redirect, {from: "myriad", to: "about"})
@@ -39,11 +47,18 @@ Router.run(routes, function (Handler) {
 <<<<<<< HEAD
 
 
},{"./components/AboutComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/Myriad":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/TasksComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[functio
 n(require,module,exports){
+=======
+},{"./components/AboutComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/HelpComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/HelpComponent.js","./components/Myriad":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/ShutdownFrameworkComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownFrameworkComponent.js","./components/ShutdownGracefulComponent":"/home/pdread/wor
 
kspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownGracefulComponent.js","./components/ShutdownRmOnlyComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownRmOnlyComponent.js","./components/TasksComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[function(require,module,exports){
+>>>>>>> 4721509... Update
+<<<<<<< HEAD
+
+},{"./components/AboutComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/Myriad":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/TasksComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[functio
 n(require,module,exports){
 
},{"./components/AboutComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/Myriad":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/TasksComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-sched
 
uler/src/main/resources/webapp/js/components/AboutComponent.js":[function(require,module,exports){
 
},{"./components/AboutComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/Myriad":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/TasksComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[functio
 n(require,module,exports){
 =======
 
},{"./components/AboutComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/HelpComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/HelpComponent.js","./components/Myriad":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/ShutdownFrameworkComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownFrameworkComponent.js","./components/ShutdownGracefulComponent":"/home/pdread/wor
 
kspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownGracefulComponent.js","./components/ShutdownRmOnlyComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownRmOnlyComponent.js","./components/TasksComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[function(require,module,exports){
 >>>>>>> 4721509... Update
+},{"./components/AboutComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js","./components/ConfigComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js","./components/FlexComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js","./components/HelpComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/HelpComponent.js","./components/Myriad":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js","./components/ShutdownFrameworkComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownFrameworkComponent.js","./components/TasksComponent":"/home/pdread/workspace/myri
 
ad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/AboutComponent.js":[function(require,module,exports){
 var React = require('react');
 
 var AboutComponent = React.createClass({
@@ -76,13 +91,15 @@ var AboutComponent = React.createClass({
 module.exports = AboutComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js":[function(require,module,exports){
 =======
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ConfigComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var ProfileComponent = require('../components/ProfileComponent');
 var RawJSONComponent = require('../components/RawJSONComponent');
@@ -121,13 +138,15 @@ var ConfigComponent = React.createClass({
 module.exports = ConfigComponent;
 
 
+<<<<<<< HEAD
+},{"../components/ProfileComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js","../components/RawJSONComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js":[function(require,module,exports){
+=======
 
},{"../components/ProfileComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js","../components/RawJSONComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js":[function(require,module,exports){
 
},{"../components/ProfileComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js","../components/RawJSONComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js","react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"../components/ProfileComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js","../components/RawJSONComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js":[function(require,module,exports){
 =======
 
},{"../components/ProfileComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js","../components/RawJSONComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var FlexUpComponent = require('../components/FlexUpComponent');
 var FlexDownComponent = require('../components/FlexDownComponent');
@@ -152,13 +171,15 @@ var FlexComponent = React.createClass({
 module.exports = FlexComponent;
 
 
+<<<<<<< HEAD
+},{"../components/FlexDownComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js","../components/FlexUpComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js":[function(require,module,exports){
+=======
 
},{"../components/FlexDownComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js","../components/FlexUpComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js":[function(require,module,exports){
 
},{"../components/FlexDownComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js","../components/FlexUpComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js","react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"../components/FlexDownComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js","../components/FlexUpComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js":[function(require,module,exports){
 =======
 
},{"../components/FlexDownComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js","../components/FlexUpComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexDownComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var ReactBootstrap = require('react-bootstrap')
   , Input = ReactBootstrap.Input
@@ -297,13 +318,15 @@ var FlexDownComponent = React.createClass({
 module.exports = FlexDownComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js":[function(require,module,exports){
 =======
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/FlexUpComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var ReactBootstrap = require('react-bootstrap')
   , Input = ReactBootstrap.Input
@@ -441,6 +464,9 @@ var FlexUpComponent = React.createClass({
 module.exports = FlexUpComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js":[function(require,module,exports){
 <<<<<<< HEAD
@@ -455,30 +481,39 @@ var HelpComponent = React.createClass({
   render: function () {
     return(
       React.createElement("div", null, 
-       React.createElement("h4", null, "Myriad dropdown menu"), 
+<<<<<<< HEAD
+       React.createElement("h4", null, "Myriad dropdown menu"), 
         React.createElement("ul", null, 
-          React.createElement("li", null, "Shutdown RM Only"), 
-               React.createElement("p", null, "Stop only the ResourceManager. 
The excutors and tasks continue to run."), 
-           React.createElement("li", null, "Shutdown Framework, Stopping 
Driver"), 
-               React.createElement("p", null, " This will stop the driver in 
failover mode, which will stop the executor and tasks, then stop the 
ResourceManager." + ' ' +
-                       "This requires the ResourceManager to be either in HA 
mode or restarted so that it re-registers with Mesos. "), 
-           React.createElement("li", null, "Shutdown Framework, Aborting 
Driver"), 
-               React.createElement("p", null, " This will shutdown all the 
tasks, then send a FrameworkMessage shutdown to the executor, then exits the 
ResourceManager." + ' ' +
-               "This allows the ResourceManager to be started backup without 
requiring it to re-register or be in High Availability (HA) mode, great for 
testing.")
-       ), 
-       React.createElement("h4", null, "Flex tab"), 
-       React.createElement("p", null, "Allows you to stand up or stop task 
resources"), 
-       React.createElement("h4", null, "Tasks tab"), 
-       React.createElement("p", null, "Allows you to monitor running task 
states"), 
-       React.createElement("h4", null, "Help menu"), 
-       React.createElement("ul", null, 
-          React.createElement("li", null, "Menu options"), 
-               React.createElement("p", null, "This text"), 
-          React.createElement("li", null, "About Myriad"), 
-               React.createElement("p", null, "Description of Myriad and its 
profiles")
-       ), 
-       React.createElement("h4", null, "Config tab"), 
-       React.createElement("p", null, "Shows Myriad configuration information")
+            React.createElement("li", null, "Shutdown Framework, Stopping 
Driver"), 
+               React.createElement("p", null, " This will stop the driver in 
failover mode, which will stop the executor and tasks, but not stop the 
ResourceManager.")
+        ), 
+=======
+               React.createElement("h4", null, "Myriad dropdown menu"), 
+               React.createElement("ul", null, 
+                       React.createElement("li", null, "Shutdown Framework, 
Stopping Driver"), 
+                               React.createElement("p", null, " This will stop 
the driver in failover mode, which will stop the executor and tasks, but not 
stop the ResourceManager.")
+               ), 
+>>>>>>> db6e190... Update
+               React.createElement("h4", null, "Flex tab"), 
+               React.createElement("p", null, "Allows you to stand up or stop 
task resources"), 
+               React.createElement("h4", null, "Tasks tab"), 
+               React.createElement("p", null, "Allows you to monitor running 
task states"), 
+               React.createElement("h4", null, "Help menu"), 
+               React.createElement("ul", null, 
+<<<<<<< HEAD
+                  React.createElement("li", null, "Menu options"), 
+                       React.createElement("p", null, "This text"), 
+                  React.createElement("li", null, "About Myriad"), 
+                       React.createElement("p", null, "Description of Myriad 
and its profiles")
+=======
+                       React.createElement("li", null, "Menu options"), 
+                               React.createElement("p", null, "This text"), 
+                       React.createElement("li", null, "About Myriad"), 
+                               React.createElement("p", null, "Description of 
Myriad and its profiles")
+>>>>>>> db6e190... Update
+               ), 
+               React.createElement("h4", null, "Config tab"), 
+               React.createElement("p", null, "Shows Myriad configuration 
information")
       )
    )}
 
@@ -488,7 +523,6 @@ module.exports = HelpComponent;
 
 
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/Myriad.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var NavbarComponent = require('../components/NavbarComponent');
 
@@ -595,13 +629,15 @@ var Myriad = React.createClass({
 
 module.exports = Myriad;
 
+<<<<<<< HEAD
+},{"../components/NavbarComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js","xml2js":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/xml2js/lib/xml2js.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js":[function(require,module,exports){
+=======
 
},{"../components/NavbarComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js","xml2js":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/xml2js/lib/xml2js.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js":[function(require,module,exports){
 
},{"../components/NavbarComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js","react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js","xml2js":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/xml2js/lib/xml2js.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"../components/NavbarComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js","xml2js":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/xml2js/lib/xml2js.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js":[function(require,module,exports){
 =======
 
},{"../components/NavbarComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js","xml2js":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/xml2js/lib/xml2js.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/NavbarComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 
 var ReactBootstrap = require('react-bootstrap')
@@ -622,31 +658,37 @@ var NavbarComponent = React.createClass({displayName: 
"NavbarComponent",
   render: function () {
     return(
 <<<<<<< HEAD
+=======
+
+>>>>>>> db6e190... Update
     React.createElement(Navbar, {fixedTop: true, inverse: true}, 
-      React.createElement(Nav, null, 
+     React.createElement(Nav, null, 
       React.createElement("a", {className: "navbar-brand", href: "#"}, 
           React.createElement("img", {src: "/img/navbar_logo.png"})
       )
+<<<<<<< HEAD
 =======
-    React.createElement(Navbar, {fixedTop: true}, 
+      ), 
       React.createElement(Nav, {bsStyle: "tabs"}, 
        React.createElement(DropdownButton, {title: "Myriad", naveItem: true}, 
-          React.createElement(NavItemLink, {to: "rmDown"}, "Shutdown RM 
Only"), 
-          React.createElement(NavItemLink, {to: "frameworkDown"}, "Shutdown 
Framework, Stopping Driver"), 
-          React.createElement(NavItemLink, {to: "gracefulDown"}, "Shutdown 
Framework, Aborting Driver")
+          React.createElement(NavItemLink, {to: "frameworkDown"}, "Shutdown 
Framework")
        )
->>>>>>> 4721509... Update
+>>>>>>> db6e190... Update
       ), 
+      React.createElement(Nav, {bsStyle: "tabs"}, 
+               React.createElement(DropdownButton, {title: "Myriad", naveItem: 
true}, 
+                       React.createElement(NavItemLink, {to: "frameworkDown"}, 
"Shutdown Framework")
+                       )
+         ), 
       React.createElement(Nav, null, 
         React.createElement(NavItemLink, {to: "flex"}, "Flex"), 
         React.createElement(NavItemLink, {to: "tasks"}, "Tasks")
       ), 
-
       React.createElement(Nav, {bsStyle: "tabs"}, 
-       React.createElement(DropdownButton, {title: "Help", naveItem: true}, 
-          React.createElement(NavItemLink, {to: "help"}, "Menu Options"), 
-          React.createElement(NavItemLink, {to: "about"}, "About Myriad")
-       )
+       React.createElement(DropdownButton, {title: "Help", naveItem: true}, 
+               React.createElement(NavItemLink, {to: "help"}, "Menu Options"), 
+               React.createElement(NavItemLink, {to: "about"}, "About Myriad")
+       )
       ), 
 
       React.createElement(Nav, {right: true}, 
@@ -664,13 +706,15 @@ var NavbarComponent = React.createClass({displayName: 
"NavbarComponent",
 module.exports = NavbarComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router-bootstrap/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router-bootstrap/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router-bootstrap":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router-bootstrap/lib/index.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router-bootstrap":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router-bootstrap/lib/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js":[function(require,module,exports){
 =======
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router-bootstrap/lib/index.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ProfileComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 
 var ProfileComponent = React.createClass({
@@ -694,13 +738,15 @@ var ProfileComponent = React.createClass({
 module.exports = ProfileComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js":[function(require,module,exports){
 =======
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/RawJSONComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 
 
@@ -721,6 +767,9 @@ var RawJSONComponent = React.createClass({
 module.exports = RawJSONComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
@@ -756,8 +805,7 @@ var XModal = React.createClass({displayName: "XModal",
        render() {
                return ( React.createElement(Modal, React.__spread({},  
this.props, {bsStyle: "primary", id: "shutdownModal", title: "Shutdown Myriad 
Framework ?", animation: false,                                   
onRequestHide: this.handleToggle}), 
                                React.createElement("div", {className: 
"modal-body"}, 
-                                       React.createElement("p", null, " This 
will stop the driver in failover mode, which will stop the executor and tasks, 
then stop the ResourceManager."), 
-                                               React.createElement("p", null, 
" This requires the ResourceManager to be either in HA mode or restarted so 
that it re-registers with Mesos. ")
+                                       React.createElement("p", null, " This 
will stop the driver in failover mode, which will stop the executor and tasks, 
but not stop the ResourceManager.")
                                ), 
                                        React.createElement("div", {className: 
"modal-footer"}, 
                                                React.createElement(Button, 
{bsStyle: "default", onClick: function() {
@@ -812,183 +860,7 @@ var ShutdownFrameworkComponent = React.createClass({
 module.exports = ShutdownFrameworkComponent;
 
 
-},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownGracefulComponent.js":[function(require,module,exports){
-var React = require('react');
-var ReactBootstrap = require('react-bootstrap')
-  , Button = ReactBootstrap.Button
-  , Modal = ReactBootstrap.Modal;
-
-var OverlayMixin = ReactBootstrap.OverlayMixin;
-var Navigation = require('react-router').Navigation;
-var request = require('superagent');
-
-var XModalGrace = React.createClass({displayName: "XModalGrace",
-       mixins: [OverlayMixin],
-
-       getInitialState() {
-               return {
-                       isModalOpen: false
-               };
-       },
-
-       handleToggle() {
-               // For whatever reason this toggle does not work as claimed on 
line....so cheat.
-               if (!this.state.isModalOpen)
-                       
document.getElementById('shutdownModalXModalGrace').style.visibility = "hidden";
-               this.setState({
-                       isModalOpen: !this.state.isModalOpen
-               });
-       },
-
-       render() {
-               return ( React.createElement(Modal, React.__spread({},  
this.props, {bsStyle: "primary", id: "shutdownModalXModalGrace", title: 
"Shutdown Myriad Gracefully?", animation: false,                                
        onRequestHide: this.handleToggle}), 
-                               React.createElement("div", {className: 
"modal-body"}, 
-                                       React.createElement("p", null, " This 
will shutdown all the tasks, then send a FrameworkMessage shutdown to the 
executor, then exits the ResourceManager. "), 
-                                       React.createElement("p", null, " This 
allows the ResourceManager to be started backup without requiring it to 
re-register or be in HA mode, great for testing.")
-                               ), 
-                                       React.createElement("div", {className: 
"modal-footer"}, 
-                                               React.createElement(Button, 
{bsStyle: "default", onClick: function() {
-                                               this.handleToggle
-                                               this.props.onCancel();
-                                               }.bind(this)}, "Cancel"), 
-                                       React.createElement(Button, {bsStyle: 
"success", onClick: function(){
-                                               this.handleToggle();
-                                               this.props.onShutdown();
-                                               }.bind(this)}, "Continue")
-                               )
-                       ));
-       },
-
-       renderOverlay() {
-                       return React.createElement("span", null);
-       }
-});
- 
-var ShutdownGracefulComponent = React.createClass({
-       mixins: [Navigation],
-
-       displayName: "ShutdownGracefulComponent",
-
-       render() {
-               return (
-                       React.createElement(XModalGrace, {onShutdown: 
this.onRequestShutdown, onCancel: this.onCancel})
-               );
-       },
-       onCancel : function() {
-               console.log("onCancel");
-               this.transitionTo("tasks");
-       },
-       onRequestShutdown: function() {
-               console.log( "shutting down Myriad .... ");
-               request.get('/api/framework/shutdown/graceful')
-                       .set('Content-Type', 'application/json')
-                       .end(function(err, res){
-                               console.log("Result from 
/api/framework/shutdown/graceful");
-                               console.log(res);
-                               if (!err) {
-                                       console.log("Shutdown myriad graceful 
successful!");
-                               } else {
-                                       console.log('Shutdown myriad graceful 
failed: ' + res.text);
-                       }
-         }.bind(this));
-
-        this.transitionTo("tasks");
-      },
-
-});
-
-module.exports = ShutdownGracefulComponent;
-
-
-},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/ShutdownRmOnlyComponent.js":[function(require,module,exports){
-var React = require('react');
-var ReactBootstrap = require('react-bootstrap')
-  , Button = ReactBootstrap.Button
-  , Modal = ReactBootstrap.Modal;
-
-var OverlayMixin = ReactBootstrap.OverlayMixin;
-var Navigation = require('react-router').Navigation;
-var request = require('superagent');
-
-var XModalRMOnly = React.createClass({displayName: "XModalRMOnly",
-       mixins: [OverlayMixin],
-
-       getInitialState() {
-               return {
-                       isModalOpen: false
-               };
-       },
-
-       handleToggle() {
-               // For whatever reason this toggle does not work as claimed on 
line....so cheat.
-               if (!this.state.isModalOpen)
-                       
document.getElementById('shutdownModalXModalRMOnly').style.visibility = 
"hidden";
-               this.setState({
-                       isModalOpen: !this.state.isModalOpen
-               });
-
-       },
-       render() {
-               return ( React.createElement(Modal, React.__spread({},  
this.props, {bsStyle: "primary", id: "shutdownModalXModalRMOnly", title: 
"Shutdown RM Only ?", animation: false,                                        
onRequestHide: this.handleToggle}), 
-                               React.createElement("div", {className: 
"modal-body"}, 
-                                       React.createElement("p", null, "This 
will only stop the ResourceManager, the executor and tasks will continure to 
run. ")
-                               ), 
-                                       React.createElement("div", {className: 
"modal-footer"}, 
-                                               React.createElement(Button, 
{bsStyle: "default", onClick:  function() {
-                                               this.handleToggle();
-                                               this.props.onCancel();
-                                               }.bind(this)}, "Cancel"), 
-                                       React.createElement(Button, {bsStyle: 
"success", onClick: function(){
-                                               this.handleToggle();
-                                               this.props.onShutdown();
-                                               }.bind(this)}, "Continue")
-                               )
-                       ));
-       },
-
-       renderOverlay() {
-          return React.createElement("span", null);
-       }
-});
- 
-var ShutdownRmOnlyComponent = React.createClass({
-       mixins: [Navigation],
-
-       displayName: "ShutdownRmOnlyComponent",
-
-       render() {
-               return (
-                       React.createElement(XModalRMOnly, {onShutdown: 
this.onRequestShutdown, onCancel: this.onCancel})
-               );
-       },
- 
-       onCancel : function() {
-               this.transitionTo("tasks");
-       },
-       onRequestShutdown: function() {
-               console.log( "shutting down Myriad .... ");
-               request.get('/api/framework/shutdown/managerOnly')
-                       .set('Content-Type', 'application/json')
-                       .end(function(err, res){
-                               console.log("Result from 
/api/framework/shutdown/managerOnly");
-                               console.log(res);
-                               if (!err) {
-                                       console.log("Shutdown RM Only 
successful!");
-                               } else {
-                                       console.log('Shutdown RM Only failed: ' 
+ res.text);
-                       }
-         }.bind(this));
-
-        this.transitionTo("tasks");
-      },
-
-});
-
-module.exports = ShutdownRmOnlyComponent;
-
-
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js","react-bootstrap":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-bootstrap/lib/main.js","react-router":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react-router/lib/index.js","superagent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/superagent/lib/client.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 
 var TaskListComponent = React.createClass({
@@ -1010,13 +882,15 @@ var TaskListComponent = React.createClass({
 module.exports = TaskListComponent;
 
 
+<<<<<<< HEAD
+},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js":[function(require,module,exports){
+=======
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js":[function(require,module,exports){
 
},{"react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js":[function(require,module,exports){
 <<<<<<< HEAD
 
},{"react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js":[function(require,module,exports){
 =======
 
},{"react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TasksComponent.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 var React = require('react');
 var TaskListComponent = require('../components/TaskListComponent');
 var changeCase = require('change-case');
@@ -1056,6 +930,11 @@ var TasksComponent = React.createClass({
 module.exports = TasksComponent;
 
 
+<<<<<<< HEAD
+},{"../components/TaskListComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js","change-case":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/change-case/change-case.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/browser-resolve/empty.js":[function(require,module,exports){
+
+},{}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/index.js":[function(require,module,exports){
+=======
 
},{"../components/TaskListComponent":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js","change-case":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/change-case/change-case.js","react":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/browser-resolve/empty.js":[function(require,module,exports){
 
},{"../components/TaskListComponent":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js","change-case":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/change-case/change-case.js","react":"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/Users/ashankar/MapR/santoshmyriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/browser-resolve/empty.js":[function(require,module,exports){
 <<<<<<< HEAD
@@ -1069,7 +948,6 @@ module.exports = TasksComponent;
 
},{"../components/TaskListComponent":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/js/components/TaskListComponent.js","change-case":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/change-case/change-case.js","react":"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/react/react.js"}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/browser-resolve/empty.js":[function(require,module,exports){
 
 
},{}],"/home/pdread/workspace/myriad-55-destroy-myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/index.js":[function(require,module,exports){
->>>>>>> 4721509... Update
 /*!
  * The buffer module from node.js, for the browser.
  *
@@ -2623,6 +2501,9 @@ function decodeUtf8Char (str) {
   }
 }
 
+<<<<<<< HEAD
+},{"base64-js":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/base64-js/lib/b64.js","ieee754":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/ieee754/index.js","is-array":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/is-array/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/base64-js/lib/b64.js":[function(require,module,exports){
+=======
 
},{"base64-js":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/base64-js/lib/b64.js","ieee754":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/ieee754/index.js","is-array":"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/is-array/index.js"}],"/Users/klucar/code/myriad/myriad-scheduler/src/main/resources/webapp/node_modules/browserify/node_modules/buffer/node_modules/base64-js/lib/b64.js":[function(require,module,exports){
 }).call(this,typeof global !== "undefined" ? global : typeof self !== 
"undefined" ? self : typeof window !== "undefined" ? window : {})
 //# 
sourceMappingURL=data:application/json;charset:utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9idWZmZXIvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Q
 
UFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0
 
E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0F
 
BQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB
 
O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ
 
UNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQT
 
tBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUF
 
DQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7
 
QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ
 
0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0
 
FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsImZpbGUiOiJnZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBUaGUgYnVmZmVyIG1vZHVsZSBmcm9tIG5vZGUuanMsIGZvciB0aGUgYnJvd3Nlci5cbiAqXG4gKiBAYXV0aG9yICAgRmVyb3NzIEFib3VraGFkaWplaCA8ZmVyb3NzQGZlcm9zcy5vcmc+IDxodHRwOi8vZmVyb3NzLm9yZz5cbiAqIEBsaWNlbnNlICBNSVRcbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tcHJvdG8gKi9cblxudmFyIGJhc2U2NCA9IHJlcXVpcmUoJ2Jhc2U2NC1qcycpXG52YXIgaWVlZTc1NCA9IHJlcXVpcmUoJ2llZWU3NTQnKVxudmFyIGlzQXJyYXkgPSByZXF1aXJlKCdpcy1hcnJ
 
heScpXG5cbmV4cG9ydHMuQnVmZmVyID0gQnVmZmVyXG5leHBvcnRzLlNsb3dCdWZmZXIgPSBTbG93QnVmZmVyXG5leHBvcnRzLklOU1BFQ1RfTUFYX0JZVEVTID0gNTBcbkJ1ZmZlci5wb29sU2l6ZSA9IDgxOTIgLy8gbm90IHVzZWQgYnkgdGhpcyBpbXBsZW1lbnRhdGlvblxuXG52YXIgcm9vdFBhcmVudCA9IHt9XG5cbi8qKlxuICogSWYgYEJ1ZmZlci5UWVBFRF9BUlJBWV9TVVBQT1JUYDpcbiAqICAgPT09IHRydWUgICAgVXNlIFVpbnQ4QXJyYXkgaW1wbGVtZW50YXRpb24gKGZhc3Rlc3QpXG4gKiAgID09PSBmYWxzZSAgIFVzZSBPYmplY3QgaW1wbGVtZW50YXRpb24gKG1vc3QgY29tcGF0aWJsZSwgZXZlbiBJRTYpXG4gKlxuICogQnJvd3NlcnMgdGhhdCBzdXBwb3J0IHR5cGVkIGFycmF5cyBhcmUgSUUgMTArLCBGaXJlZm94IDQrLCBDaHJvbWUgNyssIFNhZmFyaSA1LjErLFxuICogT3BlcmEgMTEuNissIGlPUyA0LjIrLlxuICpcbiAqIER1ZSB0byB2YXJpb3VzIGJyb3dzZXIgYnVncywgc29tZXRpbWVzIHRoZSBPYmplY3QgaW1wbGVtZW50YXRpb24gd2lsbCBiZSB1c2VkIGV2ZW5cbiAqIHdoZW4gdGhlIGJyb3dzZXIgc3VwcG9ydHMgdHlwZWQgYXJyYXlzLlxuICpcbiAqIE5vdGU6XG4gKlxuICogICAtIEZpcmVmb3ggNC0yOSBsYWNrcyBzdXBwb3J0IGZvciBhZGRpbmcgbmV3IHByb3BlcnRpZXMgdG8gYFVpbnQ4QXJyYXlgIGluc3RhbmNlcyxcbiAqICAgICBTZWU6IGh0dHBzOi8vYnVnemlsbGEubW96aWxs
 
YS5vcmcvc2hvd19idWcuY2dpP2lkPTY5NTQzOC5cbiAqXG4gKiAgIC0gU2FmYXJpIDUtNyBsYWNrcyBzdXBwb3J0IGZvciBjaGFuZ2luZyB0aGUgYE9iamVjdC5wcm90b3R5cGUuY29uc3RydWN0b3JgIHByb3BlcnR5XG4gKiAgICAgb24gb2JqZWN0cy5cbiAqXG4gKiAgIC0gQ2hyb21lIDktMTAgaXMgbWlzc2luZyB0aGUgYFR5cGVkQXJyYXkucHJvdG90eXBlLnN1YmFycmF5YCBmdW5jdGlvbi5cbiAqXG4gKiAgIC0gSUUxMCBoYXMgYSBicm9rZW4gYFR5cGVkQXJyYXkucHJvdG90eXBlLnN1YmFycmF5YCBmdW5jdGlvbiB3aGljaCByZXR1cm5zIGFycmF5cyBvZlxuICogICAgIGluY29ycmVjdCBsZW5ndGggaW4gc29tZSBzaXR1YXRpb25zLlxuXG4gKiBXZSBkZXRlY3QgdGhlc2UgYnVnZ3kgYnJvd3NlcnMgYW5kIHNldCBgQnVmZmVyLlRZUEVEX0FSUkFZX1NVUFBPUlRgIHRvIGBmYWxzZWAgc28gdGhleVxuICogZ2V0IHRoZSBPYmplY3QgaW1wbGVtZW50YXRpb24sIHdoaWNoIGlzIHNsb3dlciBidXQgYmVoYXZlcyBjb3JyZWN0bHkuXG4gKi9cbkJ1ZmZlci5UWVBFRF9BUlJBWV9TVVBQT1JUID0gZ2xvYmFsLlRZUEVEX0FSUkFZX1NVUFBPUlQgIT09IHVuZGVmaW5lZFxuICA/IGdsb2JhbC5UWVBFRF9BUlJBWV9TVVBQT1JUXG4gIDogdHlwZWRBcnJheVN1cHBvcnQoKVxuXG5mdW5jdGlvbiB0eXBlZEFycmF5U3VwcG9ydCAoKSB7XG4gIGZ1bmN0aW9uIEJhciAoKSB7fVxuICB0cnkge1xuICAgIHZhciBhcnIgPSBuZ
 
XcgVWludDhBcnJheSgxKVxuICAgIGFyci5mb28gPSBmdW5jdGlvbiAoKSB7IHJldHVybiA0MiB9XG4gICAgYXJyLmNvbnN0cnVjdG9yID0gQmFyXG4gICAgcmV0dXJuIGFyci5mb28oKSA9PT0gNDIgJiYgLy8gdHlwZWQgYXJyYXkgaW5zdGFuY2VzIGNhbiBiZSBhdWdtZW50ZWRcbiAgICAgICAgYXJyLmNvbnN0cnVjdG9yID09PSBCYXIgJiYgLy8gY29uc3RydWN0b3IgY2FuIGJlIHNldFxuICAgICAgICB0eXBlb2YgYXJyLnN1YmFycmF5ID09PSAnZnVuY3Rpb24nICYmIC8vIGNocm9tZSA5LTEwIGxhY2sgYHN1YmFycmF5YFxuICAgICAgICBhcnIuc3ViYXJyYXkoMSwgMSkuYnl0ZUxlbmd0aCA9PT0gMCAvLyBpZTEwIGhhcyBicm9rZW4gYHN1YmFycmF5YFxuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuZnVuY3Rpb24ga01heExlbmd0aCAoKSB7XG4gIHJldHVybiBCdWZmZXIuVFlQRURfQVJSQVlfU1VQUE9SVFxuICAgID8gMHg3ZmZmZmZmZlxuICAgIDogMHgzZmZmZmZmZlxufVxuXG4vKipcbiAqIENsYXNzOiBCdWZmZXJcbiAqID09PT09PT09PT09PT1cbiAqXG4gKiBUaGUgQnVmZmVyIGNvbnN0cnVjdG9yIHJldHVybnMgaW5zdGFuY2VzIG9mIGBVaW50OEFycmF5YCB0aGF0IGFyZSBhdWdtZW50ZWRcbiAqIHdpdGggZnVuY3Rpb24gcHJvcGVydGllcyBmb3IgYWxsIHRoZSBub2RlIGBCdWZmZXJgIEFQSSBmdW5jdGlvbnMuIFdlIHVzZVxuICogYFVpbnQ4QXJyYXlgIHNvIHRoYX
 
Qgc3F1YXJlIGJyYWNrZXQgbm90YXRpb24gd29ya3MgYXMgZXhwZWN0ZWQgLS0gaXQgcmV0dXJuc1xuICogYSBzaW5nbGUgb2N0ZXQuXG4gKlxuICogQnkgYXVnbWVudGluZyB0aGUgaW5zdGFuY2VzLCB3ZSBjYW4gYXZvaWQgbW9kaWZ5aW5nIHRoZSBgVWludDhBcnJheWBcbiAqIHByb3RvdHlwZS5cbiAqL1xuZnVuY3Rpb24gQnVmZmVyIChhcmcpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIEJ1ZmZlcikpIHtcbiAgICAvLyBBdm9pZCBnb2luZyB0aHJvdWdoIGFuIEFyZ3VtZW50c0FkYXB0b3JUcmFtcG9saW5lIGluIHRoZSBjb21tb24gY2FzZS5cbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA+IDEpIHJldHVybiBuZXcgQnVmZmVyKGFyZywgYXJndW1lbnRzWzFdKVxuICAgIHJldHVybiBuZXcgQnVmZmVyKGFyZylcbiAgfVxuXG4gIHRoaXMubGVuZ3RoID0gMFxuICB0aGlzLnBhcmVudCA9IHVuZGVmaW5lZFxuXG4gIC8vIENvbW1vbiBjYXNlLlxuICBpZiAodHlwZW9mIGFyZyA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gZnJvbU51bWJlcih0aGlzLCBhcmcpXG4gIH1cblxuICAvLyBTbGlnaHRseSBsZXNzIGNvbW1vbiBjYXNlLlxuICBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZnJvbVN0cmluZyh0aGlzLCBhcmcsIGFyZ3VtZW50cy5sZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogJ3V0ZjgnKVxuICB9XG5cbiAgLy8gVW51c3VhbC5cbiAgcmV0dXJuIGZyb21PYmplY3Q
 
odGhpcywgYXJnKVxufVxuXG5mdW5jdGlvbiBmcm9tTnVtYmVyICh0aGF0LCBsZW5ndGgpIHtcbiAgdGhhdCA9IGFsbG9jYXRlKHRoYXQsIGxlbmd0aCA8IDAgPyAwIDogY2hlY2tlZChsZW5ndGgpIHwgMClcbiAgaWYgKCFCdWZmZXIuVFlQRURfQVJSQVlfU1VQUE9SVCkge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoYXRbaV0gPSAwXG4gICAgfVxuICB9XG4gIHJldHVybiB0aGF0XG59XG5cbmZ1bmN0aW9uIGZyb21TdHJpbmcgKHRoYXQsIHN0cmluZywgZW5jb2RpbmcpIHtcbiAgaWYgKHR5cGVvZiBlbmNvZGluZyAhPT0gJ3N0cmluZycgfHwgZW5jb2RpbmcgPT09ICcnKSBlbmNvZGluZyA9ICd1dGY4J1xuXG4gIC8vIEFzc3VtcHRpb246IGJ5dGVMZW5ndGgoKSByZXR1cm4gdmFsdWUgaXMgYWx3YXlzIDwga01heExlbmd0aC5cbiAgdmFyIGxlbmd0aCA9IGJ5dGVMZW5ndGgoc3RyaW5nLCBlbmNvZGluZykgfCAwXG4gIHRoYXQgPSBhbGxvY2F0ZSh0aGF0LCBsZW5ndGgpXG5cbiAgdGhhdC53cml0ZShzdHJpbmcsIGVuY29kaW5nKVxuICByZXR1cm4gdGhhdFxufVxuXG5mdW5jdGlvbiBmcm9tT2JqZWN0ICh0aGF0LCBvYmplY3QpIHtcbiAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihvYmplY3QpKSByZXR1cm4gZnJvbUJ1ZmZlcih0aGF0LCBvYmplY3QpXG5cbiAgaWYgKGlzQXJyYXkob2JqZWN0KSkgcmV0dXJuIGZyb21BcnJheSh0aGF0LCBvYmplY3QpXG5cbiAgaWYgKG9iamVj
 
dCA9PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignbXVzdCBzdGFydCB3aXRoIG51bWJlciwgYnVmZmVyLCBhcnJheSBvciBzdHJpbmcnKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBBcnJheUJ1ZmZlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBpZiAob2JqZWN0LmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7XG4gICAgICByZXR1cm4gZnJvbVR5cGVkQXJyYXkodGhhdCwgb2JqZWN0KVxuICAgIH1cbiAgICBpZiAob2JqZWN0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpIHtcbiAgICAgIHJldHVybiBmcm9tQXJyYXlCdWZmZXIodGhhdCwgb2JqZWN0KVxuICAgIH1cbiAgfVxuXG4gIGlmIChvYmplY3QubGVuZ3RoKSByZXR1cm4gZnJvbUFycmF5TGlrZSh0aGF0LCBvYmplY3QpXG5cbiAgcmV0dXJuIGZyb21Kc29uT2JqZWN0KHRoYXQsIG9iamVjdClcbn1cblxuZnVuY3Rpb24gZnJvbUJ1ZmZlciAodGhhdCwgYnVmZmVyKSB7XG4gIHZhciBsZW5ndGggPSBjaGVja2VkKGJ1ZmZlci5sZW5ndGgpIHwgMFxuICB0aGF0ID0gYWxsb2NhdGUodGhhdCwgbGVuZ3RoKVxuICBidWZmZXIuY29weSh0aGF0LCAwLCAwLCBsZW5ndGgpXG4gIHJldHVybiB0aGF0XG59XG5cbmZ1bmN0aW9uIGZyb21BcnJheSAodGhhdCwgYXJyYXkpIHtcbiAgdmFyIGxlbmd0aCA9IGNoZWNrZWQoYXJyYXkubGVuZ3RoKSB8IDBcbiAgdGhhdCA9IGFsbG9jYXRlKHRoYXQsIGxlbmd0aClcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZ
 
W5ndGg7IGkgKz0gMSkge1xuICAgIHRoYXRbaV0gPSBhcnJheVtpXSAmIDI1NVxuICB9XG4gIHJldHVybiB0aGF0XG59XG5cbi8vIER1cGxpY2F0ZSBvZiBmcm9tQXJyYXkoKSB0byBrZWVwIGZyb21BcnJheSgpIG1vbm9tb3JwaGljLlxuZnVuY3Rpb24gZnJvbVR5cGVkQXJyYXkgKHRoYXQsIGFycmF5KSB7XG4gIHZhciBsZW5ndGggPSBjaGVja2VkKGFycmF5Lmxlbmd0aCkgfCAwXG4gIHRoYXQgPSBhbGxvY2F0ZSh0aGF0LCBsZW5ndGgpXG4gIC8vIFRydW5jYXRpbmcgdGhlIGVsZW1lbnRzIGlzIHByb2JhYmx5IG5vdCB3aGF0IHBlb3BsZSBleHBlY3QgZnJvbSB0eXBlZFxuICAvLyBhcnJheXMgd2l0aCBCWVRFU19QRVJfRUxFTUVOVCA+IDEgYnV0IGl0J3MgY29tcGF0aWJsZSB3aXRoIHRoZSBiZWhhdmlvclxuICAvLyBvZiB0aGUgb2xkIEJ1ZmZlciBjb25zdHJ1Y3Rvci5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMSkge1xuICAgIHRoYXRbaV0gPSBhcnJheVtpXSAmIDI1NVxuICB9XG4gIHJldHVybiB0aGF0XG59XG5cbmZ1bmN0aW9uIGZyb21BcnJheUJ1ZmZlciAodGhhdCwgYXJyYXkpIHtcbiAgaWYgKEJ1ZmZlci5UWVBFRF9BUlJBWV9TVVBQT1JUKSB7XG4gICAgLy8gUmV0dXJuIGFuIGF1Z21lbnRlZCBgVWludDhBcnJheWAgaW5zdGFuY2UsIGZvciBiZXN0IHBlcmZvcm1hbmNlXG4gICAgYXJyYXkuYnl0ZUxlbmd0aFxuICAgIHRoYXQgPSBCdWZmZXIuX2F1Z21lbnQobmV3IFVpbnQ4QX
 
JyYXkoYXJyYXkpKVxuICB9IGVsc2Uge1xuICAgIC8vIEZhbGxiYWNrOiBSZXR1cm4gYW4gb2JqZWN0IGluc3RhbmNlIG9mIHRoZSBCdWZmZXIgY2xhc3NcbiAgICB0aGF0ID0gZnJvbVR5cGVkQXJyYXkodGhhdCwgbmV3IFVpbnQ4QXJyYXkoYXJyYXkpKVxuICB9XG4gIHJldHVybiB0aGF0XG59XG5cbmZ1bmN0aW9uIGZyb21BcnJheUxpa2UgKHRoYXQsIGFycmF5KSB7XG4gIHZhciBsZW5ndGggPSBjaGVja2VkKGFycmF5Lmxlbmd0aCkgfCAwXG4gIHRoYXQgPSBhbGxvY2F0ZSh0aGF0LCBsZW5ndGgpXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgbGVuZ3RoOyBpICs9IDEpIHtcbiAgICB0aGF0W2ldID0gYXJyYXlbaV0gJiAyNTVcbiAgfVxuICByZXR1cm4gdGhhdFxufVxuXG4vLyBEZXNlcmlhbGl6ZSB7IHR5cGU6ICdCdWZmZXInLCBkYXRhOiBbMSwyLDMsLi4uXSB9IGludG8gYSBCdWZmZXIgb2JqZWN0LlxuLy8gUmV0dXJucyBhIHplcm8tbGVuZ3RoIGJ1ZmZlciBmb3IgaW5wdXRzIHRoYXQgZG9uJ3QgY29uZm9ybSB0byB0aGUgc3BlYy5cbmZ1bmN0aW9uIGZyb21Kc29uT2JqZWN0ICh0aGF0LCBvYmplY3QpIHtcbiAgdmFyIGFycmF5XG4gIHZhciBsZW5ndGggPSAwXG5cbiAgaWYgKG9iamVjdC50eXBlID09PSAnQnVmZmVyJyAmJiBpc0FycmF5KG9iamVjdC5kYXRhKSkge1xuICAgIGFycmF5ID0gb2JqZWN0LmRhdGFcbiAgICBsZW5ndGggPSBjaGVja2VkKGFycmF5Lmxlbmd0aCkgfCAwXG4gIH1cbiAgdGhhdCA9IGF
 
sbG9jYXRlKHRoYXQsIGxlbmd0aClcblxuICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsgaSArPSAxKSB7XG4gICAgdGhhdFtpXSA9IGFycmF5W2ldICYgMjU1XG4gIH1cbiAgcmV0dXJuIHRoYXRcbn1cblxuaWYgKEJ1ZmZlci5UWVBFRF9BUlJBWV9TVVBQT1JUKSB7XG4gIEJ1ZmZlci5wcm90b3R5cGUuX19wcm90b19fID0gVWludDhBcnJheS5wcm90b3R5cGVcbiAgQnVmZmVyLl9fcHJvdG9fXyA9IFVpbnQ4QXJyYXlcbn1cblxuZnVuY3Rpb24gYWxsb2NhdGUgKHRoYXQsIGxlbmd0aCkge1xuICBpZiAoQnVmZmVyLlRZUEVEX0FSUkFZX1NVUFBPUlQpIHtcbiAgICAvLyBSZXR1cm4gYW4gYXVnbWVudGVkIGBVaW50OEFycmF5YCBpbnN0YW5jZSwgZm9yIGJlc3QgcGVyZm9ybWFuY2VcbiAgICB0aGF0ID0gQnVmZmVyLl9hdWdtZW50KG5ldyBVaW50OEFycmF5KGxlbmd0aCkpXG4gICAgdGhhdC5fX3Byb3RvX18gPSBCdWZmZXIucHJvdG90eXBlXG4gIH0gZWxzZSB7XG4gICAgLy8gRmFsbGJhY2s6IFJldHVybiBhbiBvYmplY3QgaW5zdGFuY2Ugb2YgdGhlIEJ1ZmZlciBjbGFzc1xuICAgIHRoYXQubGVuZ3RoID0gbGVuZ3RoXG4gICAgdGhhdC5faXNCdWZmZXIgPSB0cnVlXG4gIH1cblxuICB2YXIgZnJvbVBvb2wgPSBsZW5ndGggIT09IDAgJiYgbGVuZ3RoIDw9IEJ1ZmZlci5wb29sU2l6ZSA+Pj4gMVxuICBpZiAoZnJvbVBvb2wpIHRoYXQucGFyZW50ID0gcm9vdFBhcmVudFxuXG4gIHJldHVybiB0aGF0XG59XG5c
 
bmZ1bmN0aW9uIGNoZWNrZWQgKGxlbmd0aCkge1xuICAvLyBOb3RlOiBjYW5ub3QgdXNlIGBsZW5ndGggPCBrTWF4TGVuZ3RoYCBoZXJlIGJlY2F1c2UgdGhhdCBmYWlscyB3aGVuXG4gIC8vIGxlbmd0aCBpcyBOYU4gKHdoaWNoIGlzIG90aGVyd2lzZSBjb2VyY2VkIHRvIHplcm8uKVxuICBpZiAobGVuZ3RoID49IGtNYXhMZW5ndGgoKSkge1xuICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdBdHRlbXB0IHRvIGFsbG9jYXRlIEJ1ZmZlciBsYXJnZXIgdGhhbiBtYXhpbXVtICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICdzaXplOiAweCcgKyBrTWF4TGVuZ3RoKCkudG9TdHJpbmcoMTYpICsgJyBieXRlcycpXG4gIH1cbiAgcmV0dXJuIGxlbmd0aCB8IDBcbn1cblxuZnVuY3Rpb24gU2xvd0J1ZmZlciAoc3ViamVjdCwgZW5jb2RpbmcpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIFNsb3dCdWZmZXIpKSByZXR1cm4gbmV3IFNsb3dCdWZmZXIoc3ViamVjdCwgZW5jb2RpbmcpXG5cbiAgdmFyIGJ1ZiA9IG5ldyBCdWZmZXIoc3ViamVjdCwgZW5jb2RpbmcpXG4gIGRlbGV0ZSBidWYucGFyZW50XG4gIHJldHVybiBidWZcbn1cblxuQnVmZmVyLmlzQnVmZmVyID0gZnVuY3Rpb24gaXNCdWZmZXIgKGIpIHtcbiAgcmV0dXJuICEhKGIgIT0gbnVsbCAmJiBiLl9pc0J1ZmZlcilcbn1cblxuQnVmZmVyLmNvbXBhcmUgPSBmdW5jdGlvbiBjb21wYXJlIChhLCBiKSB7XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKGEpIHx8I
 
CFCdWZmZXIuaXNCdWZmZXIoYikpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdBcmd1bWVudHMgbXVzdCBiZSBCdWZmZXJzJylcbiAgfVxuXG4gIGlmIChhID09PSBiKSByZXR1cm4gMFxuXG4gIHZhciB4ID0gYS5sZW5ndGhcbiAgdmFyIHkgPSBiLmxlbmd0aFxuXG4gIHZhciBpID0gMFxuICB2YXIgbGVuID0gTWF0aC5taW4oeCwgeSlcbiAgd2hpbGUgKGkgPCBsZW4pIHtcbiAgICBpZiAoYVtpXSAhPT0gYltpXSkgYnJlYWtcblxuICAgICsraVxuICB9XG5cbiAgaWYgKGkgIT09IGxlbikge1xuICAgIHggPSBhW2ldXG4gICAgeSA9IGJbaV1cbiAgfVxuXG4gIGlmICh4IDwgeSkgcmV0dXJuIC0xXG4gIGlmICh5IDwgeCkgcmV0dXJuIDFcbiAgcmV0dXJuIDBcbn1cblxuQnVmZmVyLmlzRW5jb2RpbmcgPSBmdW5jdGlvbiBpc0VuY29kaW5nIChlbmNvZGluZykge1xuICBzd2l0Y2ggKFN0cmluZyhlbmNvZGluZykudG9Mb3dlckNhc2UoKSkge1xuICAgIGNhc2UgJ2hleCc6XG4gICAgY2FzZSAndXRmOCc6XG4gICAgY2FzZSAndXRmLTgnOlxuICAgIGNhc2UgJ2FzY2lpJzpcbiAgICBjYXNlICdiaW5hcnknOlxuICAgIGNhc2UgJ2Jhc2U2NCc6XG4gICAgY2FzZSAncmF3JzpcbiAgICBjYXNlICd1Y3MyJzpcbiAgICBjYXNlICd1Y3MtMic6XG4gICAgY2FzZSAndXRmMTZsZSc6XG4gICAgY2FzZSAndXRmLTE2bGUnOlxuICAgICAgcmV0dXJuIHRydWVcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGZhbHNlXG4gIH
 
1cbn1cblxuQnVmZmVyLmNvbmNhdCA9IGZ1bmN0aW9uIGNvbmNhdCAobGlzdCwgbGVuZ3RoKSB7XG4gIGlmICghaXNBcnJheShsaXN0KSkgdGhyb3cgbmV3IFR5cGVFcnJvcignbGlzdCBhcmd1bWVudCBtdXN0IGJlIGFuIEFycmF5IG9mIEJ1ZmZlcnMuJylcblxuICBpZiAobGlzdC5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbmV3IEJ1ZmZlcigwKVxuICB9XG5cbiAgdmFyIGlcbiAgaWYgKGxlbmd0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbGVuZ3RoID0gMFxuICAgIGZvciAoaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZW5ndGggKz0gbGlzdFtpXS5sZW5ndGhcbiAgICB9XG4gIH1cblxuICB2YXIgYnVmID0gbmV3IEJ1ZmZlcihsZW5ndGgpXG4gIHZhciBwb3MgPSAwXG4gIGZvciAoaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIGl0ZW0gPSBsaXN0W2ldXG4gICAgaXRlbS5jb3B5KGJ1ZiwgcG9zKVxuICAgIHBvcyArPSBpdGVtLmxlbmd0aFxuICB9XG4gIHJldHVybiBidWZcbn1cblxuZnVuY3Rpb24gYnl0ZUxlbmd0aCAoc3RyaW5nLCBlbmNvZGluZykge1xuICBpZiAodHlwZW9mIHN0cmluZyAhPT0gJ3N0cmluZycpIHN0cmluZyA9ICcnICsgc3RyaW5nXG5cbiAgdmFyIGxlbiA9IHN0cmluZy5sZW5ndGhcbiAgaWYgKGxlbiA9PT0gMCkgcmV0dXJuIDBcblxuICAvLyBVc2UgYSBmb3IgbG9vcCB0byBhdm9pZCByZWN1cnNpb25cbiAgdmFyIGxvd2VyZWRDYXN
 
lID0gZmFsc2VcbiAgZm9yICg7Oykge1xuICAgIHN3aXRjaCAoZW5jb2RpbmcpIHtcbiAgICAgIGNhc2UgJ2FzY2lpJzpcbiAgICAgIGNhc2UgJ2JpbmFyeSc6XG4gICAgICAvLyBEZXByZWNhdGVkXG4gICAgICBjYXNlICdyYXcnOlxuICAgICAgY2FzZSAncmF3cyc6XG4gICAgICAgIHJldHVybiBsZW5cbiAgICAgIGNhc2UgJ3V0ZjgnOlxuICAgICAgY2FzZSAndXRmLTgnOlxuICAgICAgICByZXR1cm4gdXRmOFRvQnl0ZXMoc3RyaW5nKS5sZW5ndGhcbiAgICAgIGNhc2UgJ3VjczInOlxuICAgICAgY2FzZSAndWNzLTInOlxuICAgICAgY2FzZSAndXRmMTZsZSc6XG4gICAgICBjYXNlICd1dGYtMTZsZSc6XG4gICAgICAgIHJldHVybiBsZW4gKiAyXG4gICAgICBjYXNlICdoZXgnOlxuICAgICAgICByZXR1cm4gbGVuID4+PiAxXG4gICAgICBjYXNlICdiYXNlNjQnOlxuICAgICAgICByZXR1cm4gYmFzZTY0VG9CeXRlcyhzdHJpbmcpLmxlbmd0aFxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgaWYgKGxvd2VyZWRDYXNlKSByZXR1cm4gdXRmOFRvQnl0ZXMoc3RyaW5nKS5sZW5ndGggLy8gYXNzdW1lIHV0ZjhcbiAgICAgICAgZW5jb2RpbmcgPSAoJycgKyBlbmNvZGluZykudG9Mb3dlckNhc2UoKVxuICAgICAgICBsb3dlcmVkQ2FzZSA9IHRydWVcbiAgICB9XG4gIH1cbn1cbkJ1ZmZlci5ieXRlTGVuZ3RoID0gYnl0ZUxlbmd0aFxuXG4vLyBwcmUtc2V0IGZvciB2YWx1ZXMgdGhhdCBtYXkgZXhpc3QgaW4gdGhlIGZ1dHVy
 
ZVxuQnVmZmVyLnByb3RvdHlwZS5sZW5ndGggPSB1bmRlZmluZWRcbkJ1ZmZlci5wcm90b3R5cGUucGFyZW50ID0gdW5kZWZpbmVkXG5cbmZ1bmN0aW9uIHNsb3dUb1N0cmluZyAoZW5jb2RpbmcsIHN0YXJ0LCBlbmQpIHtcbiAgdmFyIGxvd2VyZWRDYXNlID0gZmFsc2VcblxuICBzdGFydCA9IHN0YXJ0IHwgMFxuICBlbmQgPSBlbmQgPT09IHVuZGVmaW5lZCB8fCBlbmQgPT09IEluZmluaXR5ID8gdGhpcy5sZW5ndGggOiBlbmQgfCAwXG5cbiAgaWYgKCFlbmNvZGluZykgZW5jb2RpbmcgPSAndXRmOCdcbiAgaWYgKHN0YXJ0IDwgMCkgc3RhcnQgPSAwXG4gIGlmIChlbmQgPiB0aGlzLmxlbmd0aCkgZW5kID0gdGhpcy5sZW5ndGhcbiAgaWYgKGVuZCA8PSBzdGFydCkgcmV0dXJuICcnXG5cbiAgd2hpbGUgKHRydWUpIHtcbiAgICBzd2l0Y2ggKGVuY29kaW5nKSB7XG4gICAgICBjYXNlICdoZXgnOlxuICAgICAgICByZXR1cm4gaGV4U2xpY2UodGhpcywgc3RhcnQsIGVuZClcblxuICAgICAgY2FzZSAndXRmOCc6XG4gICAgICBjYXNlICd1dGYtOCc6XG4gICAgICAgIHJldHVybiB1dGY4U2xpY2UodGhpcywgc3RhcnQsIGVuZClcblxuICAgICAgY2FzZSAnYXNjaWknOlxuICAgICAgICByZXR1cm4gYXNjaWlTbGljZSh0aGlzLCBzdGFydCwgZW5kKVxuXG4gICAgICBjYXNlICdiaW5hcnknOlxuICAgICAgICByZXR1cm4gYmluYXJ5U2xpY2UodGhpcywgc3RhcnQsIGVuZClcblxuICAgICAgY2FzZSAnYmFzZTY0JzpcbiAgI
 
CAgICAgcmV0dXJuIGJhc2U2NFNsaWNlKHRoaXMsIHN0YXJ0LCBlbmQpXG5cbiAgICAgIGNhc2UgJ3VjczInOlxuICAgICAgY2FzZSAndWNzLTInOlxuICAgICAgY2FzZSAndXRmMTZsZSc6XG4gICAgICBjYXNlICd1dGYtMTZsZSc6XG4gICAgICAgIHJldHVybiB1dGYxNmxlU2xpY2UodGhpcywgc3RhcnQsIGVuZClcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgaWYgKGxvd2VyZWRDYXNlKSB0aHJvdyBuZXcgVHlwZUVycm9yKCdVbmtub3duIGVuY29kaW5nOiAnICsgZW5jb2RpbmcpXG4gICAgICAgIGVuY29kaW5nID0gKGVuY29kaW5nICsgJycpLnRvTG93ZXJDYXNlKClcbiAgICAgICAgbG93ZXJlZENhc2UgPSB0cnVlXG4gICAgfVxuICB9XG59XG5cbkJ1ZmZlci5wcm90b3R5cGUudG9TdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZyAoKSB7XG4gIHZhciBsZW5ndGggPSB0aGlzLmxlbmd0aCB8IDBcbiAgaWYgKGxlbmd0aCA9PT0gMCkgcmV0dXJuICcnXG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwKSByZXR1cm4gdXRmOFNsaWNlKHRoaXMsIDAsIGxlbmd0aClcbiAgcmV0dXJuIHNsb3dUb1N0cmluZy5hcHBseSh0aGlzLCBhcmd1bWVudHMpXG59XG5cbkJ1ZmZlci5wcm90b3R5cGUuZXF1YWxzID0gZnVuY3Rpb24gZXF1YWxzIChiKSB7XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKGIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKCdBcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyJylcbiAgaWYgKHRoaXMgPT09IGIpIH
 
JldHVybiB0cnVlXG4gIHJldHVybiBCdWZmZXIuY29tcGFyZSh0aGlzLCBiKSA9PT0gMFxufVxuXG5CdWZmZXIucHJvdG90eXBlLmluc3BlY3QgPSBmdW5jdGlvbiBpbnNwZWN0ICgpIHtcbiAgdmFyIHN0ciA9ICcnXG4gIHZhciBtYXggPSBleHBvcnRzLklOU1BFQ1RfTUFYX0JZVEVTXG4gIGlmICh0aGlzLmxlbmd0aCA+IDApIHtcbiAgICBzdHIgPSB0aGlzLnRvU3RyaW5nKCdoZXgnLCAwLCBtYXgpLm1hdGNoKC8uezJ9L2cpLmpvaW4oJyAnKVxuICAgIGlmICh0aGlzLmxlbmd0aCA+IG1heCkgc3RyICs9ICcgLi4uICdcbiAgfVxuICByZXR1cm4gJzxCdWZmZXIgJyArIHN0ciArICc+J1xufVxuXG5CdWZmZXIucHJvdG90eXBlLmNvbXBhcmUgPSBmdW5jdGlvbiBjb21wYXJlIChiKSB7XG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKGIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKCdBcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyJylcbiAgaWYgKHRoaXMgPT09IGIpIHJldHVybiAwXG4gIHJldHVybiBCdWZmZXIuY29tcGFyZSh0aGlzLCBiKVxufVxuXG5CdWZmZXIucHJvdG90eXBlLmluZGV4T2YgPSBmdW5jdGlvbiBpbmRleE9mICh2YWwsIGJ5dGVPZmZzZXQpIHtcbiAgaWYgKGJ5dGVPZmZzZXQgPiAweDdmZmZmZmZmKSBieXRlT2Zmc2V0ID0gMHg3ZmZmZmZmZlxuICBlbHNlIGlmIChieXRlT2Zmc2V0IDwgLTB4ODAwMDAwMDApIGJ5dGVPZmZzZXQgPSAtMHg4MDAwMDAwMFxuICBieXRlT2Zmc2V0ID4+PSAwXG5cbiAgaWYgKHR
 
oaXMubGVuZ3RoID09PSAwKSByZXR1cm4gLTFcbiAgaWYgKGJ5dGVPZmZzZXQgPj0gdGhpcy5sZW5ndGgpIHJldHVybiAtMVxuXG4gIC8vIE5lZ2F0aXZlIG9mZnNldHMgc3RhcnQgZnJvbSB0aGUgZW5kIG9mIHRoZSBidWZmZXJcbiAgaWYgKGJ5dGVPZmZzZXQgPCAwKSBieXRlT2Zmc2V0ID0gTWF0aC5tYXgodGhpcy5sZW5ndGggKyBieXRlT2Zmc2V0LCAwKVxuXG4gIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgIGlmICh2YWwubGVuZ3RoID09PSAwKSByZXR1cm4gLTEgLy8gc3BlY2lhbCBjYXNlOiBsb29raW5nIGZvciBlbXB0eSBzdHJpbmcgYWx3YXlzIGZhaWxzXG4gICAgcmV0dXJuIFN0cmluZy5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKHRoaXMsIHZhbCwgYnl0ZU9mZnNldClcbiAgfVxuICBpZiAoQnVmZmVyLmlzQnVmZmVyKHZhbCkpIHtcbiAgICByZXR1cm4gYXJyYXlJbmRleE9mKHRoaXMsIHZhbCwgYnl0ZU9mZnNldClcbiAgfVxuICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcbiAgICBpZiAoQnVmZmVyLlRZUEVEX0FSUkFZX1NVUFBPUlQgJiYgVWludDhBcnJheS5wcm90b3R5cGUuaW5kZXhPZiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIFVpbnQ4QXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbCh0aGlzLCB2YWwsIGJ5dGVPZmZzZXQpXG4gICAgfVxuICAgIHJldHVybiBhcnJheUluZGV4T2YodGhpcywgWyB2YWwgXSwgYnl0ZU9mZnNldClcbiAgfVxuXG4gIGZ1
 
bmN0aW9uIGFycmF5SW5kZXhPZiAoYXJyLCB2YWwsIGJ5dGVPZmZzZXQpIHtcbiAgICB2YXIgZm91bmRJbmRleCA9IC0xXG4gICAgZm9yICh2YXIgaSA9IDA7IGJ5dGVPZmZzZXQgKyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoYXJyW2J5dGVPZmZzZXQgKyBpXSA9PT0gdmFsW2ZvdW5kSW5kZXggPT09IC0xID8gMCA6IGkgLSBmb3VuZEluZGV4XSkge1xuICAgICAgICBpZiAoZm91bmRJbmRleCA9PT0gLTEpIGZvdW5kSW5kZXggPSBpXG4gICAgICAgIGlmIChpIC0gZm91bmRJbmRleCArIDEgPT09IHZhbC5sZW5ndGgpIHJldHVybiBieXRlT2Zmc2V0ICsgZm91bmRJbmRleFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm91bmRJbmRleCA9IC0xXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiAtMVxuICB9XG5cbiAgdGhyb3cgbmV3IFR5cGVFcnJvcigndmFsIG11c3QgYmUgc3RyaW5nLCBudW1iZXIgb3IgQnVmZmVyJylcbn1cblxuLy8gYGdldGAgaXMgZGVwcmVjYXRlZFxuQnVmZmVyLnByb3RvdHlwZS5nZXQgPSBmdW5jdGlvbiBnZXQgKG9mZnNldCkge1xuICBjb25zb2xlLmxvZygnLmdldCgpIGlzIGRlcHJlY2F0ZWQuIEFjY2VzcyB1c2luZyBhcnJheSBpbmRleGVzIGluc3RlYWQuJylcbiAgcmV0dXJuIHRoaXMucmVhZFVJbnQ4KG9mZnNldClcbn1cblxuLy8gYHNldGAgaXMgZGVwcmVjYXRlZFxuQnVmZmVyLnByb3RvdHlwZS5zZXQgPSBmdW5jdGlvbiBzZXQgKHYsIG9mZnNldCkge1xuICBjb
 
25zb2xlLmxvZygnLnNldCgpIGlzIGRlcHJlY2F0ZWQuIEFjY2VzcyB1c2luZyBhcnJheSBpbmRleGVzIGluc3RlYWQuJylcbiAgcmV0dXJuIHRoaXMud3JpdGVVSW50OCh2LCBvZmZzZXQpXG59XG5cbmZ1bmN0aW9uIGhleFdyaXRlIChidWYsIHN0cmluZywgb2Zmc2V0LCBsZW5ndGgpIHtcbiAgb2Zmc2V0ID0gTnVtYmVyKG9mZnNldCkgfHwgMFxuICB2YXIgcmVtYWluaW5nID0gYnVmLmxlbmd0aCAtIG9mZnNldFxuICBpZiAoIWxlbmd0aCkge1xuICAgIGxlbmd0aCA9IHJlbWFpbmluZ1xuICB9IGVsc2Uge1xuICAgIGxlbmd0aCA9IE51bWJlcihsZW5ndGgpXG4gICAgaWYgKGxlbmd0aCA+IHJlbWFpbmluZykge1xuICAgICAgbGVuZ3RoID0gcmVtYWluaW5nXG4gICAgfVxuICB9XG5cbiAgLy8gbXVzdCBiZSBhbiBldmVuIG51bWJlciBvZiBkaWdpdHNcbiAgdmFyIHN0ckxlbiA9IHN0cmluZy5sZW5ndGhcbiAgaWYgKHN0ckxlbiAlIDIgIT09IDApIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBoZXggc3RyaW5nJylcblxuICBpZiAobGVuZ3RoID4gc3RyTGVuIC8gMikge1xuICAgIGxlbmd0aCA9IHN0ckxlbiAvIDJcbiAgfVxuICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHBhcnNlZCA9IHBhcnNlSW50KHN0cmluZy5zdWJzdHIoaSAqIDIsIDIpLCAxNilcbiAgICBpZiAoaXNOYU4ocGFyc2VkKSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGhleCBzdHJpbmcnKVxuICAgIGJ1Zl
 
tvZmZzZXQgKyBpXSA9IHBhcnNlZFxuICB9XG4gIHJldHVybiBpXG59XG5cbmZ1bmN0aW9uIHV0ZjhXcml0ZSAoYnVmLCBzdHJpbmcsIG9mZnNldCwgbGVuZ3RoKSB7XG4gIHJldHVybiBibGl0QnVmZmVyKHV0ZjhUb0J5dGVzKHN0cmluZywgYnVmLmxlbmd0aCAtIG9mZnNldCksIGJ1Ziwgb2Zmc2V0LCBsZW5ndGgpXG59XG5cbmZ1bmN0aW9uIGFzY2lpV3JpdGUgKGJ1Ziwgc3RyaW5nLCBvZmZzZXQsIGxlbmd0aCkge1xuICByZXR1cm4gYmxpdEJ1ZmZlcihhc2NpaVRvQnl0ZXMoc3RyaW5nKSwgYnVmLCBvZmZzZXQsIGxlbmd0aClcbn1cblxuZnVuY3Rpb24gYmluYXJ5V3JpdGUgKGJ1Ziwgc3RyaW5nLCBvZmZzZXQsIGxlbmd0aCkge1xuICByZXR1cm4gYXNjaWlXcml0ZShidWYsIHN0cmluZywgb2Zmc2V0LCBsZW5ndGgpXG59XG5cbmZ1bmN0aW9uIGJhc2U2NFdyaXRlIChidWYsIHN0cmluZywgb2Zmc2V0LCBsZW5ndGgpIHtcbiAgcmV0dXJuIGJsaXRCdWZmZXIoYmFzZTY0VG9CeXRlcyhzdHJpbmcpLCBidWYsIG9mZnNldCwgbGVuZ3RoKVxufVxuXG5mdW5jdGlvbiB1Y3MyV3JpdGUgKGJ1Ziwgc3RyaW5nLCBvZmZzZXQsIGxlbmd0aCkge1xuICByZXR1cm4gYmxpdEJ1ZmZlcih1dGYxNmxlVG9CeXRlcyhzdHJpbmcsIGJ1Zi5sZW5ndGggLSBvZmZzZXQpLCBidWYsIG9mZnNldCwgbGVuZ3RoKVxufVxuXG5CdWZmZXIucHJvdG90eXBlLndyaXRlID0gZnVuY3Rpb24gd3JpdGUgKHN0cmluZywgb2Zmc2V0LCBsZW5ndGg
 
sIGVuY29kaW5nKSB7XG4gIC8vIEJ1ZmZlciN3cml0ZShzdHJpbmcpXG4gIGlmIChvZmZzZXQgPT09IHVuZGVmaW5lZCkge1xuICAgIGVuY29kaW5nID0gJ3V0ZjgnXG4gICAgbGVuZ3RoID0gdGhpcy5sZW5ndGhcbiAgICBvZmZzZXQgPSAwXG4gIC8vIEJ1ZmZlciN3cml0ZShzdHJpbmcsIGVuY29kaW5nKVxuICB9IGVsc2UgaWYgKGxlbmd0aCA9PT0gdW5kZWZpbmVkICYmIHR5cGVvZiBvZmZzZXQgPT09ICdzdHJpbmcnKSB7XG4gICAgZW5jb2RpbmcgPSBvZmZzZXRcbiAgICBsZW5ndGggPSB0aGlzLmxlbmd0aFxuICAgIG9mZnNldCA9IDBcbiAgLy8gQnVmZmVyI3dyaXRlKHN0cmluZywgb2Zmc2V0WywgbGVuZ3RoXVssIGVuY29kaW5nXSlcbiAgfSBlbHNlIGlmIChpc0Zpbml0ZShvZmZzZXQpKSB7XG4gICAgb2Zmc2V0ID0gb2Zmc2V0IHwgMFxuICAgIGlmIChpc0Zpbml0ZShsZW5ndGgpKSB7XG4gICAgICBsZW5ndGggPSBsZW5ndGggfCAwXG4gICAgICBpZiAoZW5jb2RpbmcgPT09IHVuZGVmaW5lZCkgZW5jb2RpbmcgPSAndXRmOCdcbiAgICB9IGVsc2Uge1xuICAgICAgZW5jb2RpbmcgPSBsZW5ndGhcbiAgICAgIGxlbmd0aCA9IHVuZGVmaW5lZFxuICAgIH1cbiAgLy8gbGVnYWN5IHdyaXRlKHN0cmluZywgZW5jb2RpbmcsIG9mZnNldCwgbGVuZ3RoKSAtIHJlbW92ZSBpbiB2MC4xM1xuICB9IGVsc2Uge1xuICAgIHZhciBzd2FwID0gZW5jb2RpbmdcbiAgICBlbmNvZGluZyA9IG9mZnNldFxuICAgIG9mZnNldCA9
 IGxlbmd0aCB8IDBcbiAgICBsZW5ndGggPSBzd2FwXG4gIH

<TRUNCATED>

Reply via email to