The delayed final round of the Brazilian season was a touching, tearful affair. Up and down the country, tributes were paid to the victims of the tragic plane crash that claimed the lives of 19 Chapecoense players, plus other club employees and members of the press, in Colombia last month.
Most teams wore special kits bearing Chape's logo; some even broke with tradition and wore green for the occasion. In every stadium, the stands were full of flags and banners showing support for the stricken Santa Catarina club. Before kick-off in the nine Série A matches - Chapecoense vs Atlético Mineiro was never going to happen, despite the CBF's pleas - a minute's silence was impeccably observed.
It was a heartening display of solidarity and understandably overshadowed events on the pitch. In a way, we should be thankful that Palmeiras had sealed the title before the final round, for celebrations would have been jarring; the past few weeks have been a painful reminder that there is more to football than results and trophies. In the longer term, 2016 will always be remembered as Chapecoense's year.
It feels slightly vulgar to dish out awards in the wake of such events, but here goes nothing.
Team of the season
I'll win no prizes for originality here, but it's clearly Palmeiras. The Verdão ended a 22-year draught to win the Brasileirão in commanding fashion, leading the way after 29 of 38 rounds and generally looking far more competent than any of the rotating cast of title challengers. Their final total of 80 points is the second highest of any title winner since Brazil belatedly adopted the double-round-robin format in 2003.
At the beginning, it appeared like they were going to breeze their way to glory: Palmeiras started with a bang, all flowing attacks and thrashings. That would prove unsustainable, but coach Cuca cut his cloth accordingly and it is to his great credit that the São Paulo side always seemed to find a way to grind down their opponents, often courtesy of a trademark dead-ball routine. He won't be there in 2017, but he leaves the club in far better shape than it was in when he arrived.
There were plenty of standout players for the champions, but Gabriel Jesus was one of the players who shone the brightest. The forward started the year as a raw prospect and ends it as something approaching the finished article, having played a telling role for Palmeiras and established himself as Brazil's first-choice number nine.
The 19-year-old's transition from sparky winger to leading man was echoed in his stats. In 2016, he scored more (0.4 goals per game, up from 0.2), played more key passes (1.4 per game, up from 1), contested more aerial balls (6.4 per match, up from 3) and had more shots (2.8 per game, up from 1.9) than he did last year, that in turn seeing his WhoScored rating increase from 6.80 to 7.43, that figure the second best of those to finish the season in the Brasileiraro. The feeling is that there is more to come, too. Manchester City have a real talent on their hands.
Internacional had a torrid season, switching managers like it was going out of fashion and repeatedly failing in their attempts to emerge from a hole entirely of their own creation. Their relegation - the first in their history - was confirmed when they limped to a 1-1 draw against Fluminense on Sunday.
As if that weren't bad enough, there was also their response to the Chapecoense situation, which would have been laughable were it not so callous. "We have our own tragedy: the threat of relegation," said vice president Fernando Carvalho before Inter attempted to get the whole final round of games cancelled. The outcry was almost universal and completely justified. Few were sad to see them shunted into Série B.
Flamengo mounted an unlikely title tilt under rookie coach Zé Ricardo, but the gong goes to Rio neighbours Botafogo. O Glorioso were probably expecting a tricky season after promotion in 2015 and the early signs were not positive: they won just two of their first 10 matches and, when coach Ricardo Gomes defected to São Paulo, looked a good bet for a swift return to the second flight.
But with Jair Ventura - the son of Brazil legend Jairzinho - directing from the dugout and star playmaker Camilo pulling the strings, Botafogo gradually clawed their way up the standings, eventually elbowing Corinthians aside to claim a place in next year's Copa Libertadores. That is a stunning achievement for a modest squad.
Tchê Tchê (Palmeiras), Jorge (Flamengo) and Vitor Bueno (Santos) all get a hat-tip here, but my vote goes to Gustavo Scarpa. In a fairly dire season for Fluminense, who were forced to cut costs and played some turgid football, the young midfielder single-handedly raised spirits with a series of dynamic displays. With eight goals and 10 assists, he was directly involved in over a third of Flu's goals, and he probably would have set up more if it weren't for the departure of Fred: Scarpa made more key passes than anyone in the league (109), but most of them to erratic finishers.
Palmeiras have been credited with interest in the 22-year-old, but his creativity, dead-ball expertise and versatility - he has played as a number ten, in central midfield, out wide and even at left-back - would make him a handy signing for plenty of European clubs.
WhoScored team of the season
Reliable Santos stopper Vanderlei gets the nod in goal after a steady campaign, with the rejuvenated Réver and rangy Grêmio centre-back Pedro Geromel - the only player returning from the 2015 team of the season - in front for protection.
William was a ray of light in Inter's gloomy season, often deployed in attacking midfield due to his dribbling ability and eye for a cross, while Renê proved his worth to Sport despite a bizarre spell during which he lost his left-back berth to Costa Rica forward Rodney Wallace.
The midfield ballast is provided by Bruno Henrique, a quietly influential figure who was sorely missed by Corinthians after his departure to Palermo. Veteran creators Diego - a big hit since returning to Brazil with Flamengo - and Diego Souza also make the cut, as do Gabriel Jesus and Gustavo Scarpa.
That leaves Marinho, who ended the campaign with a whopping 7.48 rating despite turning out for relegation scrappers Vitória. His barrelling runs, crackerjack long shots and frankness in interviews have made him a firm favourite among neutrals over the last couple of years, so few would begrudge him a spot in the XI.