<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Credits</title>
<style>
body {
  font-family:Helvetica,Arial,sans-serif;
  background-color:white;
  font-size:84%;
  max-width:1020px;
}
.page-title {
  font-size:164%;
  font-weight:bold;
}
.product {
  background-color:#c3d9ff;
  overflow:auto;
  padding:2px;
  margin-top:16px;
  border-radius:5px;
}
.product .title {
  font-size:110%;
  font-weight:bold;
  float:left;
  margin:3px;
}
.product .homepage {
  text-align:right;
  float:right;
  margin:3px;
}
.product .homepage:after {
  content:" - ";
}
.product .show {
  text-align:right;
  float:right;
  margin:3px;
}
.licence {
  clear:both;
  background-color:#e8eef7;
  padding:16px;
  border-radius:3px;
  display:none;
}
.licence h3 {
  margin-top:0px;
}
.license-packages {
  font-size:80%;
}
</style>
<script>
function $(o) {return document.getElementById(o);}
function toggle(o) {
  var licence = o.nextSibling;

  while (licence.className != 'licence') {
    if (!licence) return false;
    licence = licence.nextSibling;
  }

  if (licence.style && licence.style.display == 'block') {
    licence.style.display = 'none';
    o.innerHTML = 'show license text';
  } else {
    licence.style.display = 'block';
    o.innerHTML = 'hide license text';
  }
  return false;
}
</script>
</head>
<body>
<span class="page-title" style="float:left;">Credits</span>
<a href="javascript:window.print();" style="float:right;">Print</a>
<div style="clear:both; overflow:auto;">
<h2>List of Packages used in Google Chrome OS:</h2>
<!-- Chromium <3s the following projects -->
{{entries}}
</div>

<h2>List of Shared Licenses used in Google Chrome OS:</h2>
{{licenses}}

<!-- Note that some packages included above are used during build, but not
shipped with ChromeOS proper /merlin -->
</body>
</html>
