content: import React, { Component } from 'react';
  import { Provider } from 'react-redux';
  import { Router, Route, Link, IndexRoute } from 'react-router';
  import App from './App';
  
  import NoMatch from '../components/NoMatch';
  import Welcome from './Welcome';
  
  // Demo
  import DemoFormContainer from './DemoFormContainer';
  import DemoTreeContainer from './DemoTreeContainer';
  
  /**
   * Component is exported for conditional usage in Root.js
   */
  module.exports = class Root extends Component {
    render() {
      const { store } = this.props;
      return (
        /**
         * Provider is a component provided to us by the 'react-redux' bindings that
         * wraps our app - thus making the Redux store/state available to our 'connect()'
         * calls in component hierarchy below.
         */
        <Provider store={store}>
          <Router>
            <Route path="/" component={App}>
              <IndexRoute component={Welcome}/>
              <Route path="/welcome" component={Welcome}></Route>
              <Route path="/form" component={DemoFormContainer}></Route>
              <Route path="/tree" component={DemoTreeContainer}></Route>
              <Route path="*" component={NoMatch} />
            </Route>
          </Router>
        </Provider>
      );
    }
  };
  