<!DOCTYPE html>
<html>
  <head>
    <title>Chromium Analysis</title>
    {{template "header.html" .}}
  </head>
  <body>

    <paper-header-panel class="fit">

      {{template "titlebar.html" .}}

      <div class="content">
        <paper-drawer-panel>
          <div drawer>
            <drawer-sk></drawer-sk>
          </div>
          <div main class="scrollable">
            <section id=chromium_analysis class="left_padded">
              <h2>Get data for analysis using Chromium / Telemetry patches</h2>
              <p>
                <span style="text-align: center;">
                  Read <a href="https://docs.google.com/a/chromium.org/document/d/1GhqosQcwsy6F-eBAmFn_ITDF7_Iv_rY9FhCKwAnk9qQ/edit?pli=1#heading=h.lgvqzgu7bc4d" target="_blank">this</a> for an explanation of CT's accuracy of results.
                </span>
              </p>
              <br/><br/>
              <chromium-analysis-sk id="chromium_analysis"></chromium-analysis-sk>
            </section>
          </div>
        </paper-drawer-panel>
      </div>

      <paper-toast id="confirm_toast" duration="5000"></paper-toast>
      <error-toast-sk></error-toast-sk>
    </paper-header-panel>

    <script type="text/javascript" charset="utf-8">
       (function() {
         sk.post('/_/benchmarks_platforms/').then(JSON.parse).then(function(json) {
           $$$('chromium-analysis-sk').benchmarks = json["benchmarks"];
           $$$('chromium-analysis-sk').platformsToDesc = json["platforms"];
           $$$('chromium-analysis-sk').platforms = Object.keys(json["platforms"]);
         }).catch(sk.errorMessage);
         ctfe.pageSets.getPageSets().then(function(pageSets) {
           $$$('chromium-analysis-sk').pageSets = pageSets;
         }).catch(sk.errorMessage);
       })();
    </script>

  </body>
</html>
