He has just appeared in the Champions League final and is primed to captain Ukraine at the European Championship, but seven years ago Manchester City's Oleksandr Zinchenko was playing street football in Moscow, having fled his own country because of war.
Shortly after Zinchenko had faced Hector Bellerin and Serge Gnabry when Shakhtar Donetsk played Arsenal in the Uefa Youth League in February 2014, his mother decided the family should leave for Russia to escape the military conflict that broke out in the Donbas region of Ukraine.
The move forced the then-17-year-old to terminate his contract with Donetsk after six years at the club, leaving his fledgling career shrouded in uncertainty.
Since then, the 24-year-old Manchester City left-back - having initially been signed as a midfielder - has won the Premier League three times, an FA Cup, four League Cups and was named Ukrainian footballer of the year in 2019.
And this summer Zinchenko, who could face Northern Ireland in a friendly on Thursday, will lead his country at Euro 2020. Not bad for a player whose career looked like it was over before it had really begun.
'He was just a thin guy, who behaved rather shyly'
Yuri Gavrilov, a top Soviet midfielder at Spartak
Moscow in the 1980s, told BBC Sport: "A Ukrainian
agent called me in 2014 and asked for help to find a Russian
team for Zinchenko. It was obvious that the guy had talent,
and he lived in my flat for a few months while I made attempts to arrange a deal."
Gavrilov remembers that the richest Russian clubs refused to consider him: "Directors at Zenit and Spartak Moscow told me that they have a lot of youngsters like him already. They were interested in South Americans and didn't want to hear about a Ukrainian - not even to take him for a trial."
During that time, he kept himself in form by playing in obscure amateur tournaments, at times at concrete pitches.
"He was just a thin guy, who behaved rather shyly," said Sergey Telkov, who played with Zinchenko at Russian non-league side Meteor.
"It was just a team of friends who spent time together. Zinchenko played seven or eight games with us and wasn't afraid to get injured on dreadful pitches. He was 17, I was 30, some guys were even older. It was obvious that he was a bit better than other players, but I could never imagine he would become a major star."
Playing for months with no salary
Eventually Gavrilov managed to arrange a trial for Zinchenko at Rubin Kazan in July 2014.
"Zinchenko joined us ahead of the pre-season camp and immediately started to train with the first-team squad," said former Rubin coach Rinat Bilyaletdinov.
"He made a magnificent impression with his decision-making and his potential was obvious.
"I really wanted to sign him but was told that there were legal problems with his former club Shakhtar. He stayed in Kazan until October and lived at our training centre.
"He had no salary and thus players just collected money so that he would be able to buy himself something in the city. Eventually we were informed that signing him was impossible, and he left."
Then the unexpected option of Russian Premier League club Ufa emerged.
"It was just a stroke of luck. Two of my friends happened to work for Ufa and I told them they have nothing to lose - it was always possible to release the player," said Gavrilov.
Ufa press officer Sergey Tyrtyshnyi told BBC Sport: "I had never heard of him, so I Googled him, and the first result said: 'The golden feet of Ukraine'. That was definitely a good sign.
"Other clubs were afraid to deal with Shakhtar but our lawyers did their job. We wrote a letter to Uefa, stating that we would be willing to pay any compensation that was due. Zinchenko agreed to play for a very low salary, and the club bought a small flat where he lived with his mother."
Everyone was disappointed to see just some kid'
Zinchenko joined Ufa at the beginning of 2015 as an anonymous player.
"There was a meeting with fans and we promised to bring a player for a photo session," Tyrtyshnyi added.
"All other players were out of town, so Zinchenko came - and everyone was hugely disappointed to see just some kid. Those fans must be thrilled to have a photo with him now."
Zinchenko's first coach at Ufa, Igor Kolyvanov, rarely played him, but the Ukrainian became a regular starter under Yevgeny Perevertaylo, who joined in October 2015.
"I immediately knew that he must play because of his brilliant qualities. The only thing that needed to be changed was his tendency for non-effective dribbles and passes," said Perevertaylo.
"Zinchenko was a playmaker but his defensive qualities were good too, and thus I used him at left-back for a while, when we needed attack-minded full-backs."
The young hopeful was soon making enough of an impression to be considered for senior international duty.
Tyrtyshnyi added: "When Zinchenko started playing regularly, the Ukrainian FA - who didn't really rate him previously - suddenly feared he could switch to Russia.
"It was an easy process, and Ukrainians from Donbas could get Russian citizenship in a matter of weeks. We would have liked Zinchenko to get it so that he won't be counted as foreigner. He said no, however.
"The Ukrainians called him for the game against Spain in October 2015 and used him for three minutes, just to make the switch impossible. Zinchenko is a smart guy. He knew why they were doing it. He could have refused but went there willingly, because he wanted to represent his homeland."
Zinchenko played 33 games for Ufa before signing for Manchester City in 2016 in a £1.8m deal, aged 19. He was immediately sent out on loan to PSV Eindhoven for a season.
Since returning to Manchester, he has slowly established himself as an important member of Pep Guardiola's squad - despite being linked with moves away on numerous occasions - and now he is the pride of Ukraine and its most recognisable footballer.
As Valery Rudakov, a Shakhtar legend who coached Zinchenko at under-17 level, put it: "I am glad that he managed to fulfil the potential that we saw at our academy."
- Being a beginner to the realm of online gambling does not come without its challenges. Its tough to make a decision when there are tens