Australia's longest-running saga in sport came to a conclusion on Tuesday after the AFL's Anti-Doping Tribunal cleared 34 Essendon players - past and present - of taking a prohibited peptide.
Tribunal chairman David Jones delivered the "unanimous" not guilty verdict, with the independent body "not completely satisfied" that Essendon players were administered Thymosin Beta-4 or that they had violated the AFL's anti-doping code during the 2012 season.
The players still at Essendon following 2012 were provisionally suspended during the NAB Challenge - a pre-season competition - are free to play in the club's opening game of the 2015 AFL campaign against Sydney Swans on Saturday.
Port Adelaide pair Angus Monfries and Paddy Ryder, plus Western Bulldogs forward Stewart Crameri, who have since left the club, are also eligible to play in the opening round.
Tuesday's decision finally ends a drawn-out saga that first came to light on February 5, 2012, when Essendon self-reported concerns surrounding their supplement program, led by sports scientist Steven Dank, whose findings will be revealed at a later date.
Australian Sports Anti-Doping Authority (ASADA) or World Anti-Doping Agency (WADA) have the right to appeal the decision within 21 days.
Essendon thanked their supporters via Twitter for standing by the club, tweeting: "To all those who have stood by us, our fabric is stronger because of you. Thank-you. #DonTheSash"
ASADA released a statement acknowledging the outcome but condemning Essendon for their supplement program.
"What happened at Essendon in 2012 was, in my opinion, absolutely and utterly disgraceful. It was not a supplements programme but an injection regime and the players and the fans were so poorly let down by the club," said ASADA chief executive Ben McDevitt.
"While I am obviously disappointed that the charges in this instance have not been proven to the comfortable satisfaction of the tribunal, I am pleased that the tribunal was able to finally hear these matters."
|Japan v Saudi Arabia: Pizzi believes Saudis can upset the odds|
|Repsol Honda´s Lorenzo to have surgery on fractured wrist|
|Fulham 1 Tottenham 2: Winks heads late winner after Alli injury|
|Leinster seal home quarter-final with win over Wasps|
|Vince, Curran star as Sixers trounce Heat to move second|
|Sharapova stunned by Barty as Kvitova takes Anisimova to school|
|Guardiola demands improvement after Man City win|
|Sexton has bat phone to referees - Jones|
|Alonso accepts Chelsea guilty of ´silly mistakes´ in Arsenal defeat|
|Guardiola woke us up - Sane reveals half-time rocket for Man City|
|A first step to something bigger - Tsitsipas eyeing glory after shocking Federer|
|Thailand 1 China 2: Gao Lin keeps dream alive for Lippi|
|Tsitsipas in dreamland after ousting Federer, birthday boy Tiafoe breaks new ground|
|Huddersfield Town 0 Manchester City 3: Danilo, Sterling and Sane on target for ton-up City|
|Allegri: Khedira will be like a new signing for Juventus|
|Manchester City reach 100 goals in 2018-19|
|Australia v Uzbekistan: Leckie´s return is ´like a new signing´, says Arnold|
|Jordan 1 Vietnam 1 (aet, 2-4 on penalties): Keeper Van Lam the shoot-out hero|
|Federer confirms French Open return after Melbourne exit|
|I accept his decision - Gattuso axes Chelsea-bound Higuain|
|The rapid rise of Federer-conqueror Tsitsipas|
|Gracious Federer hails ´better player´ Tsitsipas after Australian Open exit|
|Tsitsipas ´happiest man on earth´ after stunning Federer|
|Harden focused on wins, not personal feats after scoring 48 points|
|PSG midfielder Verratti suffers sprained ankle|
|Inspired Tsitsipas dethrones Federer|
|PSG´s Cavani considering career finale in Uruguay|
|Feisty Collins ready to make more noise after thrashing Kerber|
|I´ve got to work on my soccer skills! - Mavs´ Doncic didn´t know ejection rule|
|Lakers won´t rush LeBron & Rondo back despite Ball injury|
|A-League Review: Victory fightback in thriller with Wellington|
|Henry explains foul-mouthed confrontation with Strasbourg´s Lala|
|Nadal wary of ´dangerous´ Tiafoe|
|Emery ´not positive´ over Bellerin injury|
|Harden scores 48 points as Rockets rally past Lakers in OT|
|Pacquiao wants Mayweather rematch after beating Broner|
|Sharapova unimpressed with questions after Melbourne exit|
|Nadal outclasses Berdych en route to quarters|
|Collins trounces 2016 Aus Open champion Kerber|
|Sanchez: Man United thriving thanks to Solskjaer|
|Sharapova crashes out of Australian Open|
|Devils´ Palmieri replaces Hall on NHL All-Star roster|
|Tuchel stunned by PSG´s nine-goal thrashing of Guingamp|
|Modric wants to extend Real Madrid stay|
|Marotta: Icardi will re-sign, Godin wants Inter|
|´F*** no!´ - Westbrook on if he´s cool with Embiid|
|Mickelson shoots 66 to stay ahead at Desert Classic|
|Real Madrid? You never know what the future holds - PSG´s Mbappe|
|Inter lacked quality in disappointing Sassuolo draw - Spalletti|
|Walton has one goal for Lakers-Rockets matchup: Keep Harden under 50 points|
|CAF Champions League Review: Simba learn Vita lesson as Sundowns find form|
|Bayliss relishing pressure of World Cup and Ashes to finish England reign|
|Guardiola keen to keep City rhythm and challenge on four fronts|
|Fifita backs Johnson to inspire the Sharks|
|For Real Madrid, nothing is impossible - Solari refuses to give up in title race|
|Inter 0 Sassuolo 0: Spalletti´s side labour at sparse San Siro|
|Marshawn Lynch will continue playing ´if it works out´|
|Simeone excited by improving Atleti|
|Jones ´cautiously optimistic´ over Farrell ahead of Ireland clash|
|Sarri questions Chelsea motivation after Arsenal surrender|
|Emery urges Arsenal to find balance after downing Chelsea|
|Koscielny hails Arsenal fighting spirit in Chelsea win|
|Pellegrini: It was not a good idea for Arnautovic to play|
|Iran v Oman: We´re not satisfied yet, says Al Mahaijri|
|Carbery sends Munster through and ends Exeter´s lingering Champions Cup hopes|
|Dyche defiant despite offside call|
|Hasenhuttl rates Everton win as Southampton´s best|
|Benitez looking up the table after Schar inspires win over Cardiff|
|RB Leipzig 0 Borussia Dortmund 1: Witsel restores six-point cushion|
|Swansea City 1 Sheffield United 0: McBurnie punishes wasteful Blades|