<!--
  ~ Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
  ~
  ~ 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>
<head>
    <meta charset="utf-8">
    <title>SDC</title>
    <base href="/">
    <link rel="stylesheet" type="text/css" href="/sdc1/assets/preloading.css">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <link rel="icon" type="image/x-icon" href="/sdc1/assets/styles/images/favicon.png">

</head>
<body data-ng-class="bodyClass">

<!--<h1>Index.html</h1>-->


<app-root>
    <div class="preloading-page">
        <div class="project-icon" ><img src="/sdc1/assets/styles/images/splashScreen/splashscreen_logo_and_text.png"></div>
        <div class="preloading-page-loading">Loading<span>.</span><span>.</span><span>.</span></div>
    </div>
</app-root>
<!--<h2>Before ui-view</h2>-->
<div ui-view style="height:100%"></div>
<!--<h2>After ui-view</h2>-->

<script src="/sdc1/scripts/inline.bundle.js"></script>
<script src="/sdc1/scripts/polyfills.bundle.js"></script>
<script src="/sdc1/scripts/vendor.bundle.js"></script>
<script src="/dcae/dcae-bundle.js"></script>
<script id="main-bundle" src="/sdc1/scripts/main.bundle.js"></script>
<script src="/sdc1/scripts/styles.bundle.js"></script>

</body>

</html>

