http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html
new file mode 100644
index 0000000..caec7ab
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html
@@ -0,0 +1,326 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:04 PDT 
2017 -->
+<title>AggregatorsAccumulator</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" 
title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="AggregatorsAccumulator";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static 
Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggAccumParam.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.AccumulatorCheckpointingSparkListener.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html"
 target="_top">Frames</a></li>
+<li><a href="AggregatorsAccumulator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.beam.runners.spark.aggregators</div>
+<h2 title="Class AggregatorsAccumulator" class="title">Class 
AggregatorsAccumulator</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li>java.lang.Object</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.beam.runners.spark.aggregators.AggregatorsAccumulator</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public class <span class="typeNameLabel">AggregatorsAccumulator</span>
+extends java.lang.Object</pre>
+<div class="block">For resilience, <code>Accumulators</code> are required to 
be wrapped in a Singleton.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a 
href="https://spark.apache.org/docs/1.6.3/streaming-programming-guide.html#accumulators-and-broadcast-variables";>accumulators</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Nested Class Summary table, listing nested classes, and an 
explanation">
+<caption><span>Nested Classes</span><span 
class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.AccumulatorCheckpointingSparkListener.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">AggregatorsAccumulator.AccumulatorCheckpointingSparkListener</a></span></code>
+<div class="block">Spark Listener which checkpoints <a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators"><code>NamedAggregators</code></a> 
values for fault-tolerance.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html#AggregatorsAccumulator--">AggregatorsAccumulator</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span 
class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a 
href="javascript:show(1);">Static Methods</a></span><span 
class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a 
href="javascript:show(8);">Concrete Methods</a></span><span 
class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html#clear--">clear</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static org.apache.spark.Accumulator&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html#getInstance--">getInstance</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html#init-org.apache.beam.runners.spark.SparkPipelineOptions-org.apache.spark.api.java.JavaSparkContext-">init</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/SparkPipelineOptions.html"
 title="interface in 
org.apache.beam.runners.spark">SparkPipelineOptions</a>&nbsp;opts,
+    org.apache.spark.api.java.JavaSparkContext&nbsp;jsc)</code>
+<div class="block">Init aggregators accumulator if it has not been 
initiated.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, 
toString, wait, wait, wait</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="AggregatorsAccumulator--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>AggregatorsAccumulator</h4>
+<pre>public&nbsp;AggregatorsAccumulator()</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a 
name="init-org.apache.beam.runners.spark.SparkPipelineOptions-org.apache.spark.api.java.JavaSparkContext-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>init</h4>
+<pre>public static&nbsp;void&nbsp;init(<a 
href="../../../../../../org/apache/beam/runners/spark/SparkPipelineOptions.html"
 title="interface in 
org.apache.beam.runners.spark">SparkPipelineOptions</a>&nbsp;opts,
+                        
org.apache.spark.api.java.JavaSparkContext&nbsp;jsc)</pre>
+<div class="block">Init aggregators accumulator if it has not been initiated. 
This method is idempotent.</div>
+</li>
+</ul>
+<a name="getInstance--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getInstance</h4>
+<pre>public static&nbsp;org.apache.spark.Accumulator&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a>&gt;&nbsp;getInstance()</pre>
+</li>
+</ul>
+<a name="clear--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>clear</h4>
+<pre>public static&nbsp;void&nbsp;clear()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggAccumParam.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.AccumulatorCheckpointingSparkListener.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.html"
 target="_top">Frames</a></li>
+<li><a href="AggregatorsAccumulator.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html
new file mode 100644
index 0000000..e1a457b
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html
@@ -0,0 +1,368 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:05 PDT 
2017 -->
+<title>NamedAggregators.CombineFunctionState</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" 
title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="NamedAggregators.CombineFunctionState";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance 
Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.CombineFunctionState.html" 
target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.beam.runners.spark.aggregators</div>
+<h2 title="Class NamedAggregators.CombineFunctionState" class="title">Class 
NamedAggregators.CombineFunctionState&lt;InputT,InterT,OutputT&gt;</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li>java.lang.Object</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.beam.runners.spark.aggregators.NamedAggregators.CombineFunctionState&lt;InputT,InterT,OutputT&gt;</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>InputT</code> - Input data type</dd>
+<dd><code>InterT</code> - Intermediate data type (useful for averages)</dd>
+<dd><code>OutputT</code> - Output data type</dd>
+</dl>
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>java.io.Serializable, <a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;InputT,InterT,OutputT&gt;</dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a></dd>
+</dl>
+<hr>
+<br>
+<pre>public static class <span 
class="typeNameLabel">NamedAggregators.CombineFunctionState&lt;InputT,InterT,OutputT&gt;</span>
+extends java.lang.Object
+implements <a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;InputT,InterT,OutputT&gt;</pre>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a 
href="../../../../../../serialized-form.html#org.apache.beam.runners.spark.aggregators.NamedAggregators.CombineFunctionState">Serialized
 Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#CombineFunctionState-org.apache.beam.sdk.transforms.Combine.CombineFn-org.apache.beam.sdk.coders.Coder-org.apache.beam.runners.spark.translation.SparkRuntimeContext-">CombineFunctionState</a></span>(<a
 href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunction
 State.html" title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;&nbsp;combineFn,
+                    <a 
href="../../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in 
org.apache.beam.sdk.coders">Coder</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InputT</a>&gt;&nbsp;inCoder,
+                    
org.apache.beam.runners.spark.translation.SparkRuntimeContext&nbsp;ctxt)</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span 
class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a 
href="javascript:show(2);">Instance Methods</a></span><span 
class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a 
href="javascript:show(8);">Concrete Methods</a></span><span 
class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InterT</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#current--">current</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#getCombineFn--">getCombineFn</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#merge-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">merge</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionSta
 te">OutputT</a>&gt;&nbsp;other)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#render--">render</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html#update-InputT-">update</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InputT</a>&nbsp;element)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, 
toString, wait, wait, wait</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a 
name="CombineFunctionState-org.apache.beam.sdk.transforms.Combine.CombineFn-org.apache.beam.sdk.coders.Coder-org.apache.beam.runners.spark.translation.SparkRuntimeContext-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CombineFunctionState</h4>
+<pre>public&nbsp;CombineFunctionState(<a 
href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;&nbsp;combineFn,
+                            <a 
href="../../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in 
org.apache.beam.sdk.coders">Coder</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InputT</a>&gt;&nbsp;inCoder,
+                            
org.apache.beam.runners.spark.translation.SparkRuntimeContext&nbsp;ctxt)</pre>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="update-java.lang.Object-">
+<!--   -->
+</a><a name="update-InputT-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>update</h4>
+<pre>public&nbsp;void&nbsp;update(<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InputT</a>&nbsp;element)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#update-InputT-">update</a></code>&nbsp;in
 interface&nbsp;<code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>element</code> - new element to update state</dd>
+</dl>
+</li>
+</ul>
+<a 
name="merge-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre>public&nbsp;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;&nbsp;merge(<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../
 
../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;&nbsp;other)</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#merge-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">merge</a></code>&nbsp;in
 interface&nbsp;<code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="current--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>current</h4>
+<pre>public&nbsp;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">InterT</a>&nbsp;current()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#current--">current</a></code>&nbsp;in
 interface&nbsp;<code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="render--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>render</h4>
+<pre>public&nbsp;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&nbsp;render()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#render--">render</a></code>&nbsp;in
 interface&nbsp;<code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+<a name="getCombineFn--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getCombineFn</h4>
+<pre>public&nbsp;<a 
href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;&nbsp;getCombineFn()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#getCombineFn--">getCombineFn</a></code>&nbsp;in
 interface&nbsp;<code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.CombineFunctionState.html" 
target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html
new file mode 100644
index 0000000..8c6dc81
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html
@@ -0,0 +1,296 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:05 PDT 
2017 -->
+<title>NamedAggregators.State</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" 
title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="NamedAggregators.State";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance 
Methods"],4:["t3","Abstract Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.State.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.beam.runners.spark.aggregators</div>
+<h2 title="Interface NamedAggregators.State" class="title">Interface 
NamedAggregators.State&lt;InputT,InterT,OutputT&gt;</h2>
+</div>
+<div class="contentContainer">
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>InputT</code> - Input data type</dd>
+<dd><code>InterT</code> - Intermediate data type (useful for averages)</dd>
+<dd><code>OutputT</code> - Output data type</dd>
+</dl>
+<dl>
+<dt>All Superinterfaces:</dt>
+<dd>java.io.Serializable</dd>
+</dl>
+<dl>
+<dt>All Known Implementing Classes:</dt>
+<dd><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.CombineFunctionState</a></dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a></dd>
+</dl>
+<hr>
+<br>
+<pre>public static interface <span 
class="typeNameLabel">NamedAggregators.State&lt;InputT,InterT,OutputT&gt;</span>
+extends java.io.Serializable</pre>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span 
class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a 
href="javascript:show(2);">Instance Methods</a></span><span 
class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a 
href="javascript:show(4);">Abstract Methods</a></span><span 
class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#current--">current</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">OutputT</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#getCombineFn--">getCombineFn</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">OutputT</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#merge-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">merge</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">OutputT</a>&gt;&nbsp;other)</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">OutputT</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#render--">render</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html#update-InputT-">update</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">InputT</a>&nbsp;element)</code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="update-java.lang.Object-">
+<!--   -->
+</a><a name="update-InputT-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>update</h4>
+<pre>void&nbsp;update(<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>&nbsp;element)</pre>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>element</code> - new element to update state</dd>
+</dl>
+</li>
+</ul>
+<a 
name="merge-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">OutputT</a>&gt;&nbsp;merge(<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter 
 in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">OutputT</a>&gt;&nbsp;other)</pre>
+</li>
+</ul>
+<a name="current--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>current</h4>
+<pre><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">InterT</a>&nbsp;current()</pre>
+</li>
+</ul>
+<a name="render--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>render</h4>
+<pre><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">OutputT</a>&nbsp;render()</pre>
+</li>
+</ul>
+<a name="getCombineFn--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getCombineFn</h4>
+<pre><a 
href="../../../../../../org/apache/beam/sdk/transforms/Combine.CombineFn.html" 
title="class in org.apache.beam.sdk.transforms">Combine.CombineFn</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">OutputT</a>&gt;&nbsp;getCombineFn()</pre>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.State.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.html
new file mode 100644
index 0000000..f685a9a
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/NamedAggregators.html
@@ -0,0 +1,401 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:04 PDT 
2017 -->
+<title>NamedAggregators</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" 
title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="NamedAggregators";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance 
Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.AccumulatorCheckpointingSparkListener.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.beam.runners.spark.aggregators</div>
+<h2 title="Class NamedAggregators" class="title">Class NamedAggregators</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li>java.lang.Object</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.beam.runners.spark.aggregators.NamedAggregators</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd>java.io.Serializable</dd>
+</dl>
+<hr>
+<br>
+<pre>public class <span class="typeNameLabel">NamedAggregators</span>
+extends java.lang.Object
+implements java.io.Serializable</pre>
+<div class="block">This class wraps a map of named aggregators. Spark expects 
that all accumulators be declared
+ before a job is launched. Beam allows aggregators to be used and incremented 
on the fly.
+ We create a map of named aggregators and instantiate in the the spark context 
before the job
+ is launched. We can then add aggregators on the fly in Spark.</div>
+<dl>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a 
href="../../../../../../serialized-form.html#org.apache.beam.runners.spark.aggregators.NamedAggregators">Serialized
 Form</a></dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Nested Class Summary table, listing nested classes, and an 
explanation">
+<caption><span>Nested Classes</span><span 
class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.CombineFunctionState</a>&lt;<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in NamedAggregators.CombineFunctionState">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="type parameter in 
NamedAggregators.CombineFunctionState">OutputT</a>&gt;</span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static interface&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InputT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in NamedAggregators.State">InterT</a>,<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="type parameter in 
NamedAggregators.State">OutputT</a>&gt;</span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#NamedAggregators--">NamedAggregators</a></span>()</code>
+<div class="block">Constructs a new NamedAggregators instance.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#NamedAggregators-java.lang.String-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">NamedAggregators</a></span>(java.lang.String&nbsp;name,
+                <a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;?,?,?&gt;&nbsp;state)</code>
+<div class="block">Constructs a new named aggregators instance that contains a 
mapping from the specified
+ `named` to the associated initial state.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" 
summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span 
class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a 
href="javascript:show(2);">Instance Methods</a></span><span 
class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a 
href="javascript:show(8);">Concrete Methods</a></span><span 
class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#getValue-java.lang.String-java.lang.Class-">getValue</a></span>(java.lang.String&nbsp;name,
+        java.lang.Class&lt;T&gt;&nbsp;typeClass)</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#merge-org.apache.beam.runners.spark.aggregators.NamedAggregators-">merge</a></span>(<a
 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a>&nbsp;other)</code>
+<div class="block">Merges another NamedAggregators instance with this 
instance.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>java.util.Map&lt;java.lang.String,?&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#renderAll--">renderAll</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>java.lang.String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html#toString--">toString</a></span>()</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, 
wait, wait</code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="NamedAggregators--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>NamedAggregators</h4>
+<pre>public&nbsp;NamedAggregators()</pre>
+<div class="block">Constructs a new NamedAggregators instance.</div>
+</li>
+</ul>
+<a 
name="NamedAggregators-java.lang.String-org.apache.beam.runners.spark.aggregators.NamedAggregators.State-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>NamedAggregators</h4>
+<pre>public&nbsp;NamedAggregators(java.lang.String&nbsp;name,
+                        <a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.State.html"
 title="interface in 
org.apache.beam.runners.spark.aggregators">NamedAggregators.State</a>&lt;?,?,?&gt;&nbsp;state)</pre>
+<div class="block">Constructs a new named aggregators instance that contains a 
mapping from the specified
+ `named` to the associated initial state.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - Name of aggregator.</dd>
+<dd><code>state</code> - Associated State.</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getValue-java.lang.String-java.lang.Class-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getValue</h4>
+<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getValue(java.lang.String&nbsp;name,
+                      java.lang.Class&lt;T&gt;&nbsp;typeClass)</pre>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - Type to be returned.</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>name</code> - Name of aggregator to retrieve.</dd>
+<dd><code>typeClass</code> - Type class to cast the value to.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value of the aggregator associated with the specified name,
+ or <code>null</code> if the specified aggregator could not be found.</dd>
+</dl>
+</li>
+</ul>
+<a name="renderAll--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>renderAll</h4>
+<pre>public&nbsp;java.util.Map&lt;java.lang.String,?&gt;&nbsp;renderAll()</pre>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a map of all the aggregator names and their <b>rendered </b>values</dd>
+</dl>
+</li>
+</ul>
+<a name="merge-org.apache.beam.runners.spark.aggregators.NamedAggregators-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre>public&nbsp;<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a>&nbsp;merge(<a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 title="class in 
org.apache.beam.runners.spark.aggregators">NamedAggregators</a>&nbsp;other)</pre>
+<div class="block">Merges another NamedAggregators instance with this 
instance.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>other</code> - The other instance of named aggregators ot merge.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>This instance of Named aggregators with associated states updated to 
reflect the
+ other instance's aggregators.</dd>
+</dl>
+</li>
+</ul>
+<a name="toString--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;java.lang.String&nbsp;toString()</pre>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/AggregatorsAccumulator.AccumulatorCheckpointingSparkListener.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a 
href="../../../../../../org/apache/beam/runners/spark/aggregators/NamedAggregators.CombineFunctionState.html"
 title="class in org.apache.beam.runners.spark.aggregators"><span 
class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../index.html?org/apache/beam/runners/spark/aggregators/NamedAggregators.html"
 target="_top">Frames</a></li>
+<li><a href="NamedAggregators.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a 
href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-frame.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-frame.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-frame.html
new file mode 100644
index 0000000..e67fc57
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-frame.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:08 PDT 
2017 -->
+<title>org.apache.beam.runners.spark.aggregators.metrics</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a 
href="../../../../../../../org/apache/beam/runners/spark/aggregators/metrics/package-summary.html"
 target="classFrame">org.apache.beam.runners.spark.aggregators.metrics</a></h1>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/beam-site/blob/c196579f/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-summary.html
----------------------------------------------------------------------
diff --git 
a/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-summary.html
 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-summary.html
new file mode 100644
index 0000000..b0b2129
--- /dev/null
+++ 
b/content/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/spark/aggregators/metrics/package-summary.html
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (1.8.0_112-google-v7) on Fri May 12 16:50:08 PDT 
2017 -->
+<title>org.apache.beam.runners.spark.aggregators.metrics</title>
+<meta name="date" content="2017-05-12">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            
parent.document.title="org.apache.beam.runners.spark.aggregators.metrics";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../../org/apache/beam/runners/spark/aggregators/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a 
href="../../../../../../../org/apache/beam/runners/spark/coders/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../../index.html?org/apache/beam/runners/spark/aggregators/metrics/package-summary.html"
 target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a 
href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" 
class="title">Package&nbsp;org.apache.beam.runners.spark.aggregators.metrics</h1>
+<div class="docSummary">
+<div class="block">Defines classes for integrating with Spark's metrics 
mechanism (Sinks, Sources, etc.).</div>
+</div>
+<p>See:&nbsp;<a href="#package.description">Description</a></p>
+</div>
+<div class="contentContainer"><a name="package.description">
+<!--   -->
+</a>
+<h2 title="Package org.apache.beam.runners.spark.aggregators.metrics 
Description">Package org.apache.beam.runners.spark.aggregators.metrics 
Description</h2>
+<div class="block">Defines classes for integrating with Spark's metrics 
mechanism (Sinks, Sources, etc.).</div>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation 
links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a 
href="../../../../../../../org/apache/beam/runners/spark/aggregators/package-summary.html">Prev&nbsp;Package</a></li>
+<li><a 
href="../../../../../../../org/apache/beam/runners/spark/coders/package-summary.html">Next&nbsp;Package</a></li>
+</ul>
+<ul class="navList">
+<li><a 
href="../../../../../../../index.html?org/apache/beam/runners/spark/aggregators/metrics/package-summary.html"
 target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a 
href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>

Reply via email to