diff --git a/app/server-control/index.js b/app/server-control/index.js
index 12debcf..797f144 100644
--- a/app/server-control/index.js
+++ b/app/server-control/index.js
@@ -9,44 +9,50 @@
   'use strict';
 
   angular
-    .module('app.serverControl', [
-      'ngRoute',
-      'app.constants',
-      'app.common.services'
-    ])
-    // Route configuration
-    .config(['$routeProvider', function($routeProvider) {
-      $routeProvider
-        .when('/server-control/bmc-reboot', {
-          'template': require('./controllers/bmc-reboot-controller.html'),
-          'controller': 'bmcRebootController',
-          authenticated: true
-        })
-        .when('/server-control/server-led', {
-          'template': require('../server-health/controllers/unit-id-controller.html'),
-          'controller': 'unitIdController',
-          authenticated: true
-        })
-        .when('/server-control/power-operations', {
-          'template': require('./controllers/power-operations-controller.html'),
-          'controller': 'powerOperationsController',
-          authenticated: true
-        })
-        .when('/server-control/remote-console', {
-          'template': require('./controllers/remote-console-controller.html'),
-          'controller': 'remoteConsoleController',
-          authenticated: true
-        })
-        .when('/server-control/remote-console-window', {
-          'template': require('./controllers/remote-console-window-controller.html'),
-          'controller': 'remoteConsoleWindowController',
-          authenticated: true
-        })
-        .when('/server-control', {
-          'template': require('./controllers/power-operations-controller.html'),
-          'controller': 'powerOperationsController',
-          authenticated: true
-        });
-    }]);
+      .module(
+          'app.serverControl',
+          ['ngRoute', 'app.constants', 'app.common.services'])
+      // Route configuration
+      .config([
+        '$routeProvider',
+        function($routeProvider) {
+          $routeProvider
+              .when('/server-control/bmc-reboot', {
+                'template': require('./controllers/bmc-reboot-controller.html'),
+                'controller': 'bmcRebootController',
+                authenticated: true
+              })
+              .when('/server-control/server-led', {
+                'template': require(
+                    '../server-health/controllers/unit-id-controller.html'),
+                'controller': 'unitIdController',
+                authenticated: true
+              })
+              .when('/server-control/power-operations', {
+                'template':
+                    require('./controllers/power-operations-controller.html'),
+                'controller': 'powerOperationsController',
+                authenticated: true
+              })
+              .when('/server-control/remote-console', {
+                'template':
+                    require('./controllers/remote-console-controller.html'),
+                'controller': 'remoteConsoleController',
+                authenticated: true
+              })
+              .when('/server-control/remote-console-window', {
+                'template': require(
+                    './controllers/remote-console-window-controller.html'),
+                'controller': 'remoteConsoleWindowController',
+                authenticated: true
+              })
+              .when('/server-control', {
+                'template':
+                    require('./controllers/power-operations-controller.html'),
+                'controller': 'powerOperationsController',
+                authenticated: true
+              });
+        }
+      ]);
 
 })(window.angular);
