["Wales head coach Wayne Pivac did not sound like a man whose job is under extreme pressure, praising his players for their effort despite blowing a 21-point lead in the final 22 minutes to lose 39-34 to Australia on Saturday.","The morale-sapping defeat against an Australia side that were missing key players like the injured Michael Hooper and fly-half Bernard Foley could well have been Pivac's 34th and final Test in charge.","Although the 60-year-old New Zealander guided Wales to the 2021 Six Nations title, this year has been a disaster with just three wins in 12 Tests -- including a historic loss to Georgia last weekend.","With less than a year to go to the World Cup in France, Pivac may hope it is too late to change things at the top -- his most likely successor, former Wales boss Warren Gatland told Amazon Prime prior to the match he had not been approached about a return.","Pivac could point to the fact that Wales still held a comfortable lead on Saturday when captain Justin Tipuric was sin-binned for a cynical trip on Pete Samu.","He he was then joined by replacement hooker Ryan Elias who cost the hosts a penalty try which left Wales 34-32 up with less than seven minutes remaining. \u00a0","\"I thought we built the game nicely and got in a situation where we should have won the game,\" Pivac told Amazon Prime.","\"Clearly we took advantage of their indiscipline and then when the roles were reversed, they did the same to us.","\"We can't fault the effort that the boys put in. We talked after last week we wanted more physicality and we wanted to go out there and express ourselves.","\"I thought for large parts we did that, we just weren't able to bring it home.\"","- 'A tight one' -","For Gatland, who in a 12-year period guided the Welsh to four Six Nations titles, including the Grand Slam three times, there was much to admire in this former side's performance.","\"The yellow cards had a massive impact,\" he said.","\"When Australia had the yellow cards, Wales capitalised, and when Wales had two yellow cards Australia capitalised.","\"But it was a much better performance from Wales, but they'll be absolutely gutted they didn't manage to close it out.\"","There was little surprise the match between the two sides was tight as 14 of the last 15 games between them had been decided by margins of just nine points or fewer.","For Pivac's fellow New Zealander, Wallaby coach Dave Rennie it was about time his side got the better of a narrow scoreline.","The Aussies had gone down to both France and Italy by a point and then just three points at the hands of the world's top-ranked team Ireland last Saturday. They began the tour with a one-point win over Scotland.","For the 58-year-old, victory also saw them avoid what would have been their worst set of results in a calendar year since 1958. However, it was still only their fifth win in 14 Tests.\u00a0\u00a0\u00a0","\"I guess we could have lost all five (autumn Tests) or won all five, that's the sort of tour it's been,\" Rennie said.","\"It was good to win a tight one. We would have liked to have closed it out, unfortunately we gave away a penalty and gave them one more crack.","\"We have got some learning to do, but this will help.\"","pi\/dj"]