<!-- Copyright 2020 Google Inc.
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">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, minimum-scale=1, initial-scale=1, user-scalable=yes">
    <title>OSS-Fuzz build status</title>
    <meta name="description" content="OSS-Fuzz build status">

    <!-- See https://goo.gl/OOhYW5 -->
    <link rel="manifest" href="/manifest.json">

    <script src="/bower_components/webcomponentsjs/webcomponents-loader.js"></script>


    <link rel="import" href="/src/build-status/build-status.html">

    <style>
      body {
        font-family: 'Roboto', 'Noto', sans-serif;
        background: #f1f1f1;
        margin: 0;
      }
    </style>
  </head>
  <body>
    <build-status></build-status>
  </body>
</html>
