This [tag:king-of-the-hill] challenge is based off of the game show, [Weakest Link][1].  For those unfamiliar with the show, **the crux of this challenge deals with who you vote off**:

- If the other players are smarter than you, then you have less of a chance of getting the pot.  
- If the other players are dumber than you, then you have less of a pot to get.

At the start of each round, the *Pot* starts out with $0.  A group of 9 players is formed, and each player is given a unique *Smartness* from 1 to 9.

At the start of each turn, `Pot += Smartness` for each player still in the round.  Then, players vote on the player they wish to remove.  The player with the most votes is removed.  In case of a tie, the smarter player is kept.

When there are only 2 players are left in the round, they face off in a battle of wits.  The chance of the player winning is `Smartness/(Smartness+OpponentSmartness)`.  The winning player then receives the entire pot.

The player who has received the most money at the end of the game wins.

#Input / Output

Each turn, you will receive the current list of opponents.  You will have access to your smartness and **all players' entire voting history** for the round via functions in the Player class.

As output, you must return a single integer, representing the player you wish to vote for (representing their smartness).  Voting for yourself *is* allowed (but not recommended).

Rounds of 9 will repeat until all players have played at least <s>1000</s>10000 rounds, and all players have played in the same number of rounds.

You can find the controller here: https://github.com/nathanmerrill/WeakestLink

To create a player, you need to extend the Player class, and add your player to the PlayerFactory class.  Your class must follow the following rules:

1.  Communication or interference with any other player (include your other players of the same type) is strictly prohibited.  

2. Reflection and static variables (except for constants) are not allowed.

3. If you want to use randomness, I have provided a `getRandom()` function in the Player class.  Use it, so simulations can be deterministic.

I have provided many functions in the Player class for easy access to data.  You can find them online [on Github][2].  Your player will be instantiated each new round.  "Dumb/suicidal" players are allowed (but not players with the same strategy).

#Scores

    377195	WeakestLink.Players.PrudentSniper
    362413	WeakestLink.Players.Sniper
    353082	WeakestLink.Players.VengefulSniper
    347574	WeakestLink.Players.AntiExtremist
    298006	WeakestLink.Players.BobPlayer
    273867	WeakestLink.Players.MedianPlayer
    247881	WeakestLink.Players.TheCult
    240425	WeakestLink.Players.Leech
    235480	WeakestLink.Players.SniperAide
    223128	WeakestLink.Players.Guard
    220760	WeakestLink.Players.Anarchist
    216839	WeakestLink.Players.RevengePlayer
    215099	WeakestLink.Players.IndependentVoter
    213883	WeakestLink.Players.SniperKiller
    210653	WeakestLink.Players.MaxPlayer
    210262	WeakestLink.Players.Bandwagon
    209956	WeakestLink.Players.MeanPlayer
    208799	WeakestLink.Players.Coward
    207686	WeakestLink.Players.Spy
    204335	WeakestLink.Players.Hero
    203957	WeakestLink.Players.MiddleMan
    198535	WeakestLink.Players.MinPlayer
    197589	WeakestLink.Players.FixatedPlayer
    197478	WeakestLink.Players.HighOrLowNotSelf
    181484	WeakestLink.Players.RandomPlayer
    165160	WeakestLink.Players.BridgeBurner


  [1]: https://en.wikipedia.org/wiki/Weakest_Link
  [2]: https://github.com/nathanmerrill/WeakestLink/blob/master/src/WeakestLink/Players/Player.java