{%extends "changes_base.html"%}

{%block title1%}Changes for {{email|real_name}} -{%endblock%}

{%block body%}

<script language="JavaScript" type="text/javascript"><!--
function keyPressIntermediary(evt) {
  return M_dashboardKeyPress(evt);
}
document.onkeypress = keyPressIntermediary;
-->
</script>


<h1>Changes for {{email|real_name}}</h1>

{{changes}}

<script language="JavaScript" type="text/javascript"><!--
var dashboardState = new M_DashboardState(window,'change', 'M_myDashboardChangeMarker');
function M_OnAfterPaged() {
  dashboardState = new M_DashboardState(window,'change', 'M_myDashboardChangeMarker');
}
-->
</script>
{%endblock%}
