[CORD-1685] Adding copyright informations

Change-Id: I458bf73490e5874e90e21daa5b2ced52fb3a3c09
diff --git a/xos/gui/conf/app/app.config.dev.js b/xos/gui/conf/app/app.config.dev.js
index 5c620d7..4872661 100755
--- a/xos/gui/conf/app/app.config.dev.js
+++ b/xos/gui/conf/app/app.config.dev.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('AppConfig', {
     apiEndpoint: 'http://xos.dev:3000/api',
diff --git a/xos/gui/conf/app/app.config.local.ts b/xos/gui/conf/app/app.config.local.ts
index a00155b..68f9712 100755
--- a/xos/gui/conf/app/app.config.local.ts
+++ b/xos/gui/conf/app/app.config.local.ts
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 import {IAppConfig} from './interfaces';
 export const AppConfig: IAppConfig = {
   apiEndpoint: 'http://localhost:4000/api',
diff --git a/xos/gui/conf/app/app.config.production.js b/xos/gui/conf/app/app.config.production.js
index 8f5bd5a..43b5750 100755
--- a/xos/gui/conf/app/app.config.production.js
+++ b/xos/gui/conf/app/app.config.production.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('AppConfig', {
     apiEndpoint: '/spa/api',
diff --git a/xos/gui/conf/app/app.config.test.js b/xos/gui/conf/app/app.config.test.js
index 86cfcb1..37034fb 100755
--- a/xos/gui/conf/app/app.config.test.js
+++ b/xos/gui/conf/app/app.config.test.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('AppConfig', {
       apiEndpoint: 'http://xos-test:3000/api',
diff --git a/xos/gui/conf/app/style.config.cord.js b/xos/gui/conf/app/style.config.cord.js
index 6f7ebab..022938b 100755
--- a/xos/gui/conf/app/style.config.cord.js
+++ b/xos/gui/conf/app/style.config.cord.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('StyleConfig', {
     projectName: 'CORD',
diff --git a/xos/gui/conf/app/style.config.opencloud.js b/xos/gui/conf/app/style.config.opencloud.js
index 9693c5d..2c1776e 100755
--- a/xos/gui/conf/app/style.config.opencloud.js
+++ b/xos/gui/conf/app/style.config.opencloud.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('StyleConfig', {
     projectName: 'OpenCloud',
diff --git a/xos/gui/conf/browsersync-dist.conf.js b/xos/gui/conf/browsersync-dist.conf.js
index fa45845..704b46c 100755
--- a/xos/gui/conf/browsersync-dist.conf.js
+++ b/xos/gui/conf/browsersync-dist.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const conf = require('./gulp.conf');
 
 module.exports = function () {
diff --git a/xos/gui/conf/browsersync.conf.js b/xos/gui/conf/browsersync.conf.js
index 430c94f..b5bf434 100755
--- a/xos/gui/conf/browsersync.conf.js
+++ b/xos/gui/conf/browsersync.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const conf = require('./gulp.conf');
 const proxy = require('./proxy');
 
diff --git a/xos/gui/conf/gulp.conf.js b/xos/gui/conf/gulp.conf.js
index dfcc730..867d9dc 100755
--- a/xos/gui/conf/gulp.conf.js
+++ b/xos/gui/conf/gulp.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 'use strict';
 
 /**
diff --git a/xos/gui/conf/karma-auto.conf.js b/xos/gui/conf/karma-auto.conf.js
index a5ea084..f4ce829 100755
--- a/xos/gui/conf/karma-auto.conf.js
+++ b/xos/gui/conf/karma-auto.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const conf = require('./gulp.conf');
 const pkg = require('../package.json');
 
diff --git a/xos/gui/conf/karma.conf.js b/xos/gui/conf/karma.conf.js
index 2db6132..c8bc5f5 100755
--- a/xos/gui/conf/karma.conf.js
+++ b/xos/gui/conf/karma.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const conf = require('./gulp.conf');
 
 module.exports = function (config) {
diff --git a/xos/gui/conf/proxy.js b/xos/gui/conf/proxy.js
index a0d9ee0..b6e5e83 100644
--- a/xos/gui/conf/proxy.js
+++ b/xos/gui/conf/proxy.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const httpProxy = require('http-proxy');
 
 const target = process.env.PROXY || '192.168.46.100';
diff --git a/xos/gui/conf/webpack-dist.conf.js b/xos/gui/conf/webpack-dist.conf.js
index 91dd0a7..36fbd97 100755
--- a/xos/gui/conf/webpack-dist.conf.js
+++ b/xos/gui/conf/webpack-dist.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const webpack = require('webpack');
 const conf = require('./gulp.conf');
 const path = require('path');
diff --git a/xos/gui/conf/webpack-test.conf.js b/xos/gui/conf/webpack-test.conf.js
index a87e383..c0115ab 100755
--- a/xos/gui/conf/webpack-test.conf.js
+++ b/xos/gui/conf/webpack-test.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 module.exports = {
   module: {
     preLoaders: [
diff --git a/xos/gui/conf/webpack.conf.js b/xos/gui/conf/webpack.conf.js
index 544b2c5..d70e771 100755
--- a/xos/gui/conf/webpack.conf.js
+++ b/xos/gui/conf/webpack.conf.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const webpack = require('webpack');
 const conf = require('./gulp.conf');
 const path = require('path');
diff --git a/xos/gui/dist/extensions/ecord-local/app.config.js b/xos/gui/dist/extensions/ecord-local/app.config.js
index 8f5bd5a..43b5750 100644
--- a/xos/gui/dist/extensions/ecord-local/app.config.js
+++ b/xos/gui/dist/extensions/ecord-local/app.config.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('AppConfig', {
     apiEndpoint: '/spa/api',
diff --git a/xos/gui/dist/extensions/ecord-local/app.js b/xos/gui/dist/extensions/ecord-local/app.js
index ec8048e..25d7bb6 100644
--- a/xos/gui/dist/extensions/ecord-local/app.js
+++ b/xos/gui/dist/extensions/ecord-local/app.js
@@ -1 +1,19 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 webpackJsonp([0],{121:function(module,exports){"use strict";exports.__esModule=!0;var ECordFineGrainedGraphReducer=function(){function ECordFineGrainedGraphReducer(XosServiceGraphExtender){this.XosServiceGraphExtender=XosServiceGraphExtender,this.nodes=[{id:"subscriber~1",label:"Enterprise",type:"subscriber"},{id:"tenant~1",label:"1",type:"tenant"},{id:"service~1",label:"vEE",type:"service"},{id:"tenant~2",label:"2",type:"tenant"},{id:"service~2",label:"vEG",type:"service"},{id:"tenant~3",label:"3",type:"tenant"},{id:"service~3",label:"vROUTER",type:"service"},{id:"tenant~4",label:"4",type:"tenant"},{id:"network~1",label:"public",type:"network"},{id:"tenant~5",label:"5",type:"tenant"},{id:"service~4",label:"vNodLocal",type:"service"},{id:"tenant~6",label:"6",type:"tenant"},{id:"network~2",label:"enterprise",type:"network"}],this.links=[{id:"service~1-tenant~1",source:2,target:1},{id:"tenant~1-subscriber~1",source:1,target:0},{id:"service~2-tenant~2",source:4,target:3},{id:"tenant~2-tenant~1",source:3,target:1},{id:"service~3-tenant~3",source:6,target:5},{id:"tenant~3-tenant~2",source:5,target:3},{id:"network~1-tenant~4",source:8,target:7},{id:"tenant~4-tenant~3",source:7,target:5},{id:"service~4-tenant~5",source:10,target:9},{id:"tenant~5-tenant~1",source:9,target:1},{id:"network~2-tenant~6",source:12,target:11},{id:"tenant~6-tenant~5",source:11,target:9}]}return ECordFineGrainedGraphReducer.prototype.setup=function(){var _this=this;this.XosServiceGraphExtender.register("finegrained","ecord-local",function(){return{nodes:_this.nodes,links:_this.links}})},ECordFineGrainedGraphReducer}();ECordFineGrainedGraphReducer.$inject=["XosServiceGraphExtender"],exports.ECordFineGrainedGraphReducer=ECordFineGrainedGraphReducer},122:function(module,exports){"use strict";function routesConfig($stateProvider,$locationProvider){$locationProvider.html5Mode(!1).hashPrefix("")}exports.__esModule=!0,exports["default"]=routesConfig},478:function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var angular=__webpack_require__(48);__webpack_require__(47),__webpack_require__(46),__webpack_require__(45);var routes_1=__webpack_require__(122),fine_grained_graph_extension_1=__webpack_require__(121);angular.module("xos-ecord-local-gui-extension",["ui.router","app"]).config(routes_1["default"]).service("ECordFineGrainedGraphReducer",fine_grained_graph_extension_1.ECordFineGrainedGraphReducer).run(["$log","RCordGraphReducer",function($log, ECordFineGrainedGraphReducer){$log.info("[xos-ecord-local-gui-extension] App is running"),ECordFineGrainedGraphReducer.setup()}])}},[478]);
\ No newline at end of file
diff --git a/xos/gui/dist/extensions/ecord-local/index.html b/xos/gui/dist/extensions/ecord-local/index.html
index 5083e91..e5958e6 100644
--- a/xos/gui/dist/extensions/ecord-local/index.html
+++ b/xos/gui/dist/extensions/ecord-local/index.html
@@ -1,3 +1,21 @@
+
+<!--
+Copyright 2017-present Open Networking Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
 <!DOCTYPE html>
 <html lang="en" ng-app="xos-ecord-local-gui-extension">
 <head><base href="/spa/">
diff --git a/xos/gui/dist/extensions/ecord-local/style.config.js b/xos/gui/dist/extensions/ecord-local/style.config.js
index 6f7ebab..022938b 100644
--- a/xos/gui/dist/extensions/ecord-local/style.config.js
+++ b/xos/gui/dist/extensions/ecord-local/style.config.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 angular.module('app')
   .constant('StyleConfig', {
     projectName: 'CORD',
diff --git a/xos/gui/dist/extensions/ecord-local/vendor.js b/xos/gui/dist/extensions/ecord-local/vendor.js
index ef6d952..5bfe167 100644
--- a/xos/gui/dist/extensions/ecord-local/vendor.js
+++ b/xos/gui/dist/extensions/ecord-local/vendor.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 !function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var parentJsonpFunction=window.webpackJsonp;window.webpackJsonp=function(chunkIds,moreModules,executeModules){for(var moduleId,chunkId,result,i=0,resolves=[];i<chunkIds.length;i++)chunkId=chunkIds[i],installedChunks[chunkId]&&resolves.push(installedChunks[chunkId][0]),installedChunks[chunkId]=0;for(moduleId in moreModules)Object.prototype.hasOwnProperty.call(moreModules,moduleId)&&(modules[moduleId]=moreModules[moduleId]);for(parentJsonpFunction&&parentJsonpFunction(chunkIds,moreModules,executeModules);resolves.length;)resolves.shift()();if(executeModules)for(i=0;i<executeModules.length;i++)result=__webpack_require__(__webpack_require__.s=executeModules[i]);return result};var installedModules={},installedChunks={1:0};return __webpack_require__.e=function(chunkId){function onScriptComplete(){script.onerror=script.onload=null,clearTimeout(timeout);var chunk=installedChunks[chunkId];0!==chunk&&(chunk&&chunk[1](new Error("Loading chunk "+chunkId+" failed.")),installedChunks[chunkId]=void 0)}if(0===installedChunks[chunkId])return Promise.resolve();if(installedChunks[chunkId])return installedChunks[chunkId][2];var head=document.getElementsByTagName("head")[0],script=document.createElement("script");script.type="text/javascript",script.charset="utf-8",script.async=!0,script.timeout=12e4,script.src=__webpack_require__.p+""+chunkId+".js";var timeout=setTimeout(onScriptComplete,12e4);script.onerror=script.onload=onScriptComplete,head.appendChild(script);var promise=new Promise(function(resolve,reject){installedChunks[chunkId]=[resolve,reject]});return installedChunks[chunkId][2]=promise},__webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module["default"]}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="/spa/",__webpack_require__.oe=function(err){throw console.error(err),err},__webpack_require__(__webpack_require__.s=479)}([function(module,exports,__webpack_require__){"use strict";var root_1=__webpack_require__(8),toSubscriber_1=__webpack_require__(424),observable_1=__webpack_require__(32),Observable=function(){function Observable(subscribe){this._isScalar=!1,subscribe&&(this._subscribe=subscribe)}return Observable.prototype.lift=function(operator){var observable=new Observable;return observable.source=this,observable.operator=operator,observable},Observable.prototype.subscribe=function(observerOrNext,error,complete){var operator=this.operator,sink=toSubscriber_1.toSubscriber(observerOrNext,error,complete);if(operator?operator.call(sink,this.source):sink.add(this._trySubscribe(sink)),sink.syncErrorThrowable&&(sink.syncErrorThrowable=!1,sink.syncErrorThrown))throw sink.syncErrorValue;return sink},Observable.prototype._trySubscribe=function(sink){try{return this._subscribe(sink)}catch(err){sink.syncErrorThrown=!0,sink.syncErrorValue=err,sink.error(err)}},Observable.prototype.forEach=function(next,PromiseCtor){var _this=this;if(PromiseCtor||(root_1.root.Rx&&root_1.root.Rx.config&&root_1.root.Rx.config.Promise?PromiseCtor=root_1.root.Rx.config.Promise:root_1.root.Promise&&(PromiseCtor=root_1.root.Promise)),!PromiseCtor)throw new Error("no Promise impl found");return new PromiseCtor(function(resolve,reject){var subscription=_this.subscribe(function(value){if(subscription)try{next(value)}catch(err){reject(err),subscription.unsubscribe()}else next(value)},reject,resolve)})},Observable.prototype._subscribe=function(subscriber){return this.source.subscribe(subscriber)},Observable.prototype[observable_1.$$observable]=function(){return this},Observable.create=function(subscribe){return new Observable(subscribe)},Observable}();exports.Observable=Observable},function(module,exports,__webpack_require__){"use strict";var __extends=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},isFunction_1=__webpack_require__(38),Subscription_1=__webpack_require__(5),Observer_1=__webpack_require__(71),rxSubscriber_1=__webpack_require__(33),Subscriber=function(_super){function Subscriber(destinationOrNext,error,complete){switch(_super.call(this),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=Observer_1.empty;break;case 1:if(!destinationOrNext){this.destination=Observer_1.empty;break}if("object"==typeof destinationOrNext){destinationOrNext instanceof Subscriber?(this.destination=destinationOrNext,this.destination.add(this)):(this.syncErrorThrowable=!0,this.destination=new SafeSubscriber(this,destinationOrNext));break}default:this.syncErrorThrowable=!0,this.destination=new SafeSubscriber(this,destinationOrNext,error,complete)}}return __extends(Subscriber,_super),Subscriber.prototype[rxSubscriber_1.$$rxSubscriber]=function(){return this},Subscriber.create=function(next,error,complete){var subscriber=new Subscriber(next,error,complete);return subscriber.syncErrorThrowable=!1,subscriber},Subscriber.prototype.next=function(value){this.isStopped||this._next(value)},Subscriber.prototype.error=function(err){this.isStopped||(this.isStopped=!0,this._error(err))},Subscriber.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},Subscriber.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,_super.prototype.unsubscribe.call(this))},Subscriber.prototype._next=function(value){this.destination.next(value)},Subscriber.prototype._error=function(err){this.destination.error(err),this.unsubscribe()},Subscriber.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},Subscriber.prototype._unsubscribeAndRecycle=function(){var _a=this,_parent=_a._parent,_parents=_a._parents;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=_parent,this._parents=_parents,this},Subscriber}(Subscription_1.Subscription);exports.Subscriber=Subscriber;var SafeSubscriber=function(_super){function SafeSubscriber(_parentSubscriber,observerOrNext,error,complete){_super.call(this),this._parentSubscriber=_parentSubscriber;var next,context=this;isFunction_1.isFunction(observerOrNext)?next=observerOrNext:observerOrNext&&(context=observerOrNext,next=observerOrNext.next,error=observerOrNext.error,complete=observerOrNext.complete,isFunction_1.isFunction(context.unsubscribe)&&this.add(context.unsubscribe.bind(context)),context.unsubscribe=this.unsubscribe.bind(this)),this._context=context,this._next=next,this._error=error,this._complete=complete}return __extends(SafeSubscriber,_super),SafeSubscriber.prototype.next=function(value){if(!this.isStopped&&this._next){var _parentSubscriber=this._parentSubscriber;_parentSubscriber.syncErrorThrowable?this.__tryOrSetError(_parentSubscriber,this._next,value)&&this.unsubscribe():this.__tryOrUnsub(this._next,value)}},SafeSubscriber.prototype.error=function(err){if(!this.isStopped){var _parentSubscriber=this._parentSubscriber;if(this._error)_parentSubscriber.syncErrorThrowable?(this.__tryOrSetError(_parentSubscriber,this._error,err),this.unsubscribe()):(this.__tryOrUnsub(this._error,err),this.unsubscribe());else{if(!_parentSubscriber.syncErrorThrowable)throw this.unsubscribe(),err;_parentSubscriber.syncErrorValue=err,_parentSubscriber.syncErrorThrown=!0,this.unsubscribe()}}},SafeSubscriber.prototype.complete=function(){if(!this.isStopped){var _parentSubscriber=this._parentSubscriber;this._complete?_parentSubscriber.syncErrorThrowable?(this.__tryOrSetError(_parentSubscriber,this._complete),this.unsubscribe()):(this.__tryOrUnsub(this._complete),this.unsubscribe()):this.unsubscribe()}},SafeSubscriber.prototype.__tryOrUnsub=function(fn,value){try{fn.call(this._context,value)}catch(err){throw this.unsubscribe(),err}},SafeSubscriber.prototype.__tryOrSetError=function(parent,fn,value){try{fn.call(this._context,value)}catch(err){return parent.syncErrorValue=err,parent.syncErrorThrown=!0,!0}return!1},SafeSubscriber.prototype._unsubscribe=function(){var _parentSubscriber=this._parentSubscriber;this._context=null,this._parentSubscriber=null,_parentSubscriber.unsubscribe()},SafeSubscriber}(Subscriber)},function(module,exports,__webpack_require__){"use strict";var __extends=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},Subscriber_1=__webpack_require__(1),OuterSubscriber=function(_super){function OuterSubscriber(){_super.apply(this,arguments)}return __extends(OuterSubscriber,_super),OuterSubscriber.prototype.notifyNext=function(outerValue,innerValue,outerIndex,innerIndex,innerSub){this.destination.next(innerValue)},OuterSubscriber.prototype.notifyError=function(error,innerSub){this.destination.error(error)},OuterSubscriber.prototype.notifyComplete=function(innerSub){this.destination.complete()},OuterSubscriber}(Subscriber_1.Subscriber);exports.OuterSubscriber=OuterSubscriber},function(module,exports,__webpack_require__){"use strict";function subscribeToResult(outerSubscriber,result,outerValue,outerIndex){var destination=new InnerSubscriber_1.InnerSubscriber(outerSubscriber,outerValue,outerIndex);if(destination.closed)return null;if(result instanceof Observable_1.Observable)return result._isScalar?(destination.next(result.value),destination.complete(),null):result.subscribe(destination);if(isArrayLike_1.isArrayLike(result)){for(var i=0,len=result.length;i<len&&!destination.closed;i++)destination.next(result[i]);destination.closed||destination.complete()}else{if(isPromise_1.isPromise(result))return result.then(function(value){destination.closed||(destination.next(value),destination.complete())},function(err){return destination.error(err)}).then(null,function(err){root_1.root.setTimeout(function(){throw err})}),destination;if(result&&"function"==typeof result[iterator_1.$$iterator])for(var iterator=result[iterator_1.$$iterator]();;){var item=iterator.next();if(item.done){destination.complete();break}if(destination.next(item.value),destination.closed)break}else if(result&&"function"==typeof result[observable_1.$$observable]){var obs=result[observable_1.$$observable]();if("function"==typeof obs.subscribe)return obs.subscribe(new InnerSubscriber_1.InnerSubscriber(outerSubscriber,outerValue,outerIndex));destination.error(new TypeError("Provided object does not correctly implement Symbol.observable"))}else{var value=isObject_1.isObject(result)?"an invalid object":"'"+result+"'",msg="You provided "+value+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.";destination.error(new TypeError(msg))}}return null}var root_1=__webpack_require__(8),isArrayLike_1=__webpack_require__(95),isPromise_1=__webpack_require__(97),isObject_1=__webpack_require__(96),Observable_1=__webpack_require__(0),iterator_1=__webpack_require__(25),InnerSubscriber_1=__webpack_require__(151),observable_1=__webpack_require__(32);exports.subscribeToResult=subscribeToResult},function(module,exports){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){"use strict";function flattenUnsubscriptionErrors(errors){return errors.reduce(function(errs,err){return errs.concat(err instanceof UnsubscriptionError_1.UnsubscriptionError?err.errors:err)},[])}var isArray_1=__webpack_require__(14),isObject_1=__webpack_require__(96),isFunction_1=__webpack_require__(38),tryCatch_1=__webpack_require__(9),errorObject_1=__webpack_require__(7),UnsubscriptionError_1=__webpack_require__(93),Subscription=function(){function Subscription(unsubscribe){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,unsubscribe&&(this._unsubscribe=unsubscribe)}return Subscription.prototype.unsubscribe=function(){var errors,hasErrors=!1;if(!this.closed){var _a=this,_parent=_a._parent,_parents=_a._parents,_unsubscribe=_a._unsubscribe,_subscriptions=_a._subscriptions;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;for(var index=-1,len=_parents?_parents.length:0;_parent;)_parent.remove(this),_parent=++index<len&&_parents[index]||null;if(isFunction_1.isFunction(_unsubscribe)){var trial=tryCatch_1.tryCatch(_unsubscribe).call(this);trial===errorObject_1.errorObject&&(hasErrors=!0,errors=errors||(errorObject_1.errorObject.e instanceof UnsubscriptionError_1.UnsubscriptionError?flattenUnsubscriptionErrors(errorObject_1.errorObject.e.errors):[errorObject_1.errorObject.e]))}if(isArray_1.isArray(_subscriptions))for(index=-1,len=_subscriptions.length;++index<len;){var sub=_subscriptions[index];if(isObject_1.isObject(sub)){var trial=tryCatch_1.tryCatch(sub.unsubscribe).call(sub);if(trial===errorObject_1.errorObject){hasErrors=!0,errors=errors||[];var err=errorObject_1.errorObject.e;err instanceof UnsubscriptionError_1.UnsubscriptionError?errors=errors.concat(flattenUnsubscriptionErrors(err.errors)):errors.push(err)}}}if(hasErrors)throw new UnsubscriptionError_1.UnsubscriptionError(errors)}},Subscription.prototype.add=function(teardown){if(!teardown||teardown===Subscription.EMPTY)return Subscription.EMPTY;if(teardown===this)return this;var subscription=teardown;switch(typeof teardown){case"function":subscription=new Subscription(teardown);case"object":if(subscription.closed||"function"!=typeof subscription.unsubscribe)return subscription;if(this.closed)return subscription.unsubscribe(),subscription;if("function"!=typeof subscription._addParent){var tmp=subscription;subscription=new Subscription,subscription._subscriptions=[tmp]}break;default:throw new Error("unrecognized teardown "+teardown+" added to Subscription.")}var subscriptions=this._subscriptions||(this._subscriptions=[]);return subscriptions.push(subscription),subscription._addParent(this),subscription},Subscription.prototype.remove=function(subscription){var subscriptions=this._subscriptions;if(subscriptions){var subscriptionIndex=subscriptions.indexOf(subscription);subscriptionIndex!==-1&&subscriptions.splice(subscriptionIndex,1)}},Subscription.prototype._addParent=function(parent){var _a=this,_parent=_a._parent,_parents=_a._parents;_parent&&_parent!==parent?_parents?_parents.indexOf(parent)===-1&&_parents.push(parent):this._parents=[parent]:this._parent=parent},Subscription.EMPTY=function(empty){return empty.closed=!0,empty}(new Subscription),Subscription}();exports.Subscription=Subscription},function(module,exports,__webpack_require__){"use strict";var __extends=this&&this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);d.prototype=null===b?Object.create(b):(__.prototype=b.prototype,new __)},Observable_1=__webpack_require__(0),Subscriber_1=__webpack_require__(1),Subscription_1=__webpack_require__(5),ObjectUnsubscribedError_1=__webpack_require__(36),SubjectSubscription_1=__webpack_require__(72),rxSubscriber_1=__webpack_require__(33),SubjectSubscriber=function(_super){function SubjectSubscriber(destination){_super.call(this,destination),this.destination=destination}return __extends(SubjectSubscriber,_super),SubjectSubscriber}(Subscriber_1.Subscriber);exports.SubjectSubscriber=SubjectSubscriber;var Subject=function(_super){function Subject(){_super.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return __extends(Subject,_super),Subject.prototype[rxSubscriber_1.$$rxSubscriber]=function(){return new SubjectSubscriber(this)},Subject.prototype.lift=function(operator){var subject=new AnonymousSubject(this,this);return subject.operator=operator,subject},Subject.prototype.next=function(value){if(this.closed)throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError;if(!this.isStopped)for(var observers=this.observers,len=observers.length,copy=observers.slice(),i=0;i<len;i++)copy[i].next(value)},Subject.prototype.error=function(err){if(this.closed)throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError;this.hasError=!0,this.thrownError=err,this.isStopped=!0;for(var observers=this.observers,len=observers.length,copy=observers.slice(),i=0;i<len;i++)copy[i].error(err);this.observers.length=0},Subject.prototype.complete=function(){if(this.closed)throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError;this.isStopped=!0;for(var observers=this.observers,len=observers.length,copy=observers.slice(),i=0;i<len;i++)copy[i].complete();this.observers.length=0},Subject.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},Subject.prototype._trySubscribe=function(subscriber){if(this.closed)throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError;return _super.prototype._trySubscribe.call(this,subscriber)},Subject.prototype._subscribe=function(subscriber){if(this.closed)throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError;return this.hasError?(subscriber.error(this.thrownError),Subscription_1.Subscription.EMPTY):this.isStopped?(subscriber.complete(),Subscription_1.Subscription.EMPTY):(this.observers.push(subscriber),new SubjectSubscription_1.SubjectSubscription(this,subscriber))},Subject.prototype.asObservable=function(){var observable=new Observable_1.Observable;return observable.source=this,observable},Subject.create=function(destination,source){return new AnonymousSubject(destination,source)},Subject}(Observable_1.Observable);exports.Subject=Subject;var AnonymousSubject=function(_super){function AnonymousSubject(destination,source){_super.call(this),this.destination=destination,this.source=source}return __extends(AnonymousSubject,_super),AnonymousSubject.prototype.next=function(value){var destination=this.destination;destination&&destination.next&&destination.next(value)},AnonymousSubject.prototype.error=function(err){var destination=this.destination;destination&&destination.error&&this.destination.error(err)},AnonymousSubject.prototype.complete=function(){var destination=this.destination;destination&&destination.complete&&this.destination.complete()},AnonymousSubject.prototype._subscribe=function(subscriber){var source=this.source;return source?this.source.subscribe(subscriber):Subscription_1.Subscription.EMPTY},AnonymousSubject}(Subject);exports.AnonymousSubject=AnonymousSubject},function(module,exports){"use strict";exports.errorObject={e:{}}},function(module,exports,__webpack_require__){"use strict";(function(global){if(exports.root="object"==typeof window&&window.window===window&&window||"object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global,!exports.root)throw new Error("RxJS could not find any global context (window, self, global)")}).call(exports,__webpack_require__(4))},function(module,exports,__webpack_require__){"use strict";function tryCatcher(){try{return tryCatchTarget.apply(this,arguments)}catch(e){return errorObject_1.errorObject.e=e,errorObject_1.errorObject}}function tryCatch(fn){return tryCatchTarget=fn,tryCatcher}var tryCatchTarget,errorObject_1=__webpack_require__(7);exports.tryCatch=tryCatch},function(module,exports,__webpack_require__){"use strict";var AsyncAction_1=__webpack_require__(23),AsyncScheduler_1=__webpack_require__(24);exports.async=new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction)},function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;/*!
  * jQuery JavaScript Library v3.1.1
  * https://jquery.com/
diff --git a/xos/gui/gulp_tasks/browsersync.js b/xos/gui/gulp_tasks/browsersync.js
index 945a88d..0e4ada2 100755
--- a/xos/gui/gulp_tasks/browsersync.js
+++ b/xos/gui/gulp_tasks/browsersync.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const gulp = require('gulp');
 const browserSync = require('browser-sync');
 const spa = require('browser-sync-spa');
diff --git a/xos/gui/gulp_tasks/karma.js b/xos/gui/gulp_tasks/karma.js
index 5b90572..9955d1a 100755
--- a/xos/gui/gulp_tasks/karma.js
+++ b/xos/gui/gulp_tasks/karma.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const path = require('path');
 
 const gulp = require('gulp');
diff --git a/xos/gui/gulp_tasks/misc.js b/xos/gui/gulp_tasks/misc.js
index d1e70ec..2c9fbb0 100755
--- a/xos/gui/gulp_tasks/misc.js
+++ b/xos/gui/gulp_tasks/misc.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const path = require('path');
 
 const gulp = require('gulp');
diff --git a/xos/gui/gulp_tasks/webpack.js b/xos/gui/gulp_tasks/webpack.js
index ec8e8b1..ccb64c0 100755
--- a/xos/gui/gulp_tasks/webpack.js
+++ b/xos/gui/gulp_tasks/webpack.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const gulp = require('gulp');
 const gutil = require('gulp-util');
 
diff --git a/xos/gui/gulpfile.js b/xos/gui/gulpfile.js
index 541d6e4..a15e854 100755
--- a/xos/gui/gulpfile.js
+++ b/xos/gui/gulpfile.js
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 const gulp = require('gulp');
 const HubRegistry = require('gulp-hub');
 const browserSync = require('browser-sync');
diff --git a/xos/gui/src/app/services/graph.extension.ts b/xos/gui/src/app/services/graph.extension.ts
index aa80755..56310f2 100644
--- a/xos/gui/src/app/services/graph.extension.ts
+++ b/xos/gui/src/app/services/graph.extension.ts
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 import * as $ from 'jquery';
 import * as _ from 'lodash';
 
diff --git a/xos/gui/src/index.html b/xos/gui/src/index.html
index 9ad9542..57bd4f5 100644
--- a/xos/gui/src/index.html
+++ b/xos/gui/src/index.html
@@ -1,3 +1,21 @@
+
+<!--
+Copyright 2017-present Open Networking Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
 <!DOCTYPE html>
 <html lang="en" ng-app="xos-rcord-gui-extension">
 <head>
diff --git a/xos/gui/src/index.ts b/xos/gui/src/index.ts
index adf4382..85d3a34 100644
--- a/xos/gui/src/index.ts
+++ b/xos/gui/src/index.ts
@@ -1,3 +1,21 @@
+
+/*
+ * Copyright 2017-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
 /// <reference path="../typings/index.d.ts" />
 import * as angular from 'angular';