blob: 935729411b924918c23d4e0e2459a82e18f69f1d [file] [log] [blame]
<!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_102) on Fri Nov 25 15:51:08 PST 2016 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TrialManager (com.yahoo.datasketches:sketches-misc 0.8.3-SNAPSHOT API)</title>
<meta name="date" content="2016-11-25">
<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="TrialManager (com.yahoo.datasketches:sketches-misc 0.8.3-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":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="class-use/TrialManager.html">Use</a></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="../../../../com/yahoo/sketches/performance/Stats.html" title="class in com.yahoo.sketches.performance"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/performance/TrialManager.html" target="_top">Frames</a></li>
<li><a href="TrialManager.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">com.yahoo.sketches.performance</div>
<h2 title="Class TrialManager" class="title">Class TrialManager</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.yahoo.sketches.performance.TrialManager</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">TrialManager</span>
extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Manages the execution of every trial. One of these for the entire process.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Lee Rhodes</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="../../../../com/yahoo/sketches/performance/TrialManager.html#TrialManager--">TrialManager</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="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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#doTrial-com.yahoo.sketches.performance.Stats-int-">doTrial</a></span>(<a href="../../../../com/yahoo/sketches/performance/Stats.html" title="class in com.yahoo.sketches.performance">Stats</a>&nbsp;stats,
int&nbsp;uPerTrial)</code>
<div class="block">Create (or reset) a sketch and perform uPerTrial updates then update the given Stats.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getLgK--">getLgK</a></span>()</code>
<div class="block">Return the Log-base 2 of the configured nominal entries or k</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getMaximumGeneratingIndex--">getMaximumGeneratingIndex</a></span>()</code>
<div class="block">Returns the maximum generating index (gi) from the log_base2 of the maximum number of uniques
for the entire test run.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getP--">getP</a></span>()</code>
<div class="block">Return the probability sampling rate, <i>p</i>.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getPPO--">getPPO</a></span>()</code>
<div class="block">Return the configured Points-Per-Octave.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getRebuild--">getRebuild</a></span>()</code>
<div class="block">Return true if sketch rebuild is requested to bring sketch size down to k, if necessary.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#getTrials-int-">getTrials</a></span>(int&nbsp;curU)</code>
<div class="block">Computes the number of trials for a given current number of uniques for a trial set.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#setHllSketchBuilder-com.yahoo.sketches.hll.HllSketchBuilder-">setHllSketchBuilder</a></span>(com.yahoo.sketches.hll.HllSketchBuilder&nbsp;hllBldr)</code>
<div class="block">Sets the HLL builder used to create the HLL sketches.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#setTrialsProfile-int-int-int-int-">setTrialsProfile</a></span>(int&nbsp;lgMinTrials,
int&nbsp;lgMaxTrials,
int&nbsp;lgMaxU,
int&nbsp;ppo)</code>
<div class="block">This sets the profile for how the number of trials vary with the number of uniques.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.html#setUpdateSketchBuilder-com.yahoo.sketches.theta.UpdateSketchBuilder-boolean-boolean-">setUpdateSketchBuilder</a></span>(com.yahoo.sketches.theta.UpdateSketchBuilder&nbsp;udBldr,
boolean&nbsp;direct,
boolean&nbsp;rebuild)</code>
<div class="block">Sets the theta UpdateSketch builder used to create the theta UpdateSketches.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/performance/TrialManager.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.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></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="TrialManager--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TrialManager</h4>
<pre>public&nbsp;TrialManager()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setUpdateSketchBuilder-com.yahoo.sketches.theta.UpdateSketchBuilder-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUpdateSketchBuilder</h4>
<pre>public&nbsp;void&nbsp;setUpdateSketchBuilder(com.yahoo.sketches.theta.UpdateSketchBuilder&nbsp;udBldr,
boolean&nbsp;direct,
boolean&nbsp;rebuild)</pre>
<div class="block">Sets the theta UpdateSketch builder used to create the theta UpdateSketches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>udBldr</code> - the theta UpdateSketchBuilder</dd>
<dd><code>direct</code> - true if direct (off heap) mode is desired. Instead of actual off heap memory
this will emulate that behavior by using an on-heap byte array accessed by the Memory package.
Performance-wise it is the same except for issues of garbage collection, which is not the
purpose of this test.</dd>
<dd><code>rebuild</code> - set true if rebuild is desired</dd>
</dl>
</li>
</ul>
<a name="setHllSketchBuilder-com.yahoo.sketches.hll.HllSketchBuilder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHllSketchBuilder</h4>
<pre>public&nbsp;void&nbsp;setHllSketchBuilder(com.yahoo.sketches.hll.HllSketchBuilder&nbsp;hllBldr)</pre>
<div class="block">Sets the HLL builder used to create the HLL sketches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>hllBldr</code> - the HllSketchBuilder</dd>
</dl>
</li>
</ul>
<a name="setTrialsProfile-int-int-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTrialsProfile</h4>
<pre>public&nbsp;void&nbsp;setTrialsProfile(int&nbsp;lgMinTrials,
int&nbsp;lgMaxTrials,
int&nbsp;lgMaxU,
int&nbsp;ppo)</pre>
<div class="block">This sets the profile for how the number of trials vary with the number of uniques.
The number of trials is the maximum until the number of uniques exceeds k, whereby
the number of trials starts to decrease in a power-law fashion until the minimum
number of trials is reached at the maximum number of uniques to be tested.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lgMinTrials</code> - The minimum number of trials in a trial set specified as the
exponent of 2. This will occur at the maximum uniques value.</dd>
<dd><code>lgMaxTrials</code> - The maximum number of trials in a trial set specified as the
exponent of 2.</dd>
<dd><code>lgMaxU</code> - The maximum number of uniques for this entire test specified as the
exponent of 2. The first trail set starts at uniques (u = 1).</dd>
<dd><code>ppo</code> - The number of Points Per Octave along the unique value number line
that will be used for generating trial sets. Recommended values are one point per octave
to 16 points per octave.</dd>
</dl>
</li>
</ul>
<a name="doTrial-com.yahoo.sketches.performance.Stats-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doTrial</h4>
<pre>public&nbsp;void&nbsp;doTrial(<a href="../../../../com/yahoo/sketches/performance/Stats.html" title="class in com.yahoo.sketches.performance">Stats</a>&nbsp;stats,
int&nbsp;uPerTrial)</pre>
<div class="block">Create (or reset) a sketch and perform uPerTrial updates then update the given Stats.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>stats</code> - The given Stats object</dd>
<dd><code>uPerTrial</code> - the number of updates for this trial.</dd>
</dl>
</li>
</ul>
<a name="getTrials-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTrials</h4>
<pre>public&nbsp;int&nbsp;getTrials(int&nbsp;curU)</pre>
<div class="block">Computes the number of trials for a given current number of uniques for a trial set.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>curU</code> - the given current number of uniques for a trial set.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of trials for a given current number of uniques for a trial set.</dd>
</dl>
</li>
</ul>
<a name="getLgK--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLgK</h4>
<pre>public&nbsp;int&nbsp;getLgK()</pre>
<div class="block">Return the Log-base 2 of the configured nominal entries or k</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Log-base 2 of the configured nominal entries or k</dd>
</dl>
</li>
</ul>
<a name="getP--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getP</h4>
<pre>public&nbsp;double&nbsp;getP()</pre>
<div class="block">Return the probability sampling rate, <i>p</i>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the probability sampling rate, <i>p</i>.</dd>
</dl>
</li>
</ul>
<a name="getPPO--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPPO</h4>
<pre>public&nbsp;int&nbsp;getPPO()</pre>
<div class="block">Return the configured Points-Per-Octave.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the configured Points-Per-Octave.</dd>
</dl>
</li>
</ul>
<a name="getRebuild--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRebuild</h4>
<pre>public&nbsp;boolean&nbsp;getRebuild()</pre>
<div class="block">Return true if sketch rebuild is requested to bring sketch size down to k, if necessary.
Only relevant for QuickSelectSketch.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if sketch rebuild is requested to bring sketch size down to k, if necessary.</dd>
</dl>
</li>
</ul>
<a name="getMaximumGeneratingIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumGeneratingIndex</h4>
<pre>public&nbsp;int&nbsp;getMaximumGeneratingIndex()</pre>
<div class="block">Returns the maximum generating index (gi) from the log_base2 of the maximum number of uniques
for the entire test run.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum generating index (gi)</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></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="class-use/TrialManager.html">Use</a></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="../../../../com/yahoo/sketches/performance/Stats.html" title="class in com.yahoo.sketches.performance"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/performance/TrialManager.html" target="_top">Frames</a></li>
<li><a href="TrialManager.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 ======= -->
<p class="legalCopy"><small>Copyright &#169; 2016 <a href="http://www.yahoo.com">Yahoo! Inc.</a>. All rights reserved.</small></p>
</body>
</html>