In my opinion, none of the above. Or at the very least, it might be worth waiting a bit if you don't need a new card immediately. The 5700XT has been a fine card, but right now we are at a time when new graphics cards are launching with significantly higher performance around this price level.
While availability is extremely low for the time being, and you will likely have trouble finding one near their starting price for some time to come, Nvidia recently launched their new RTX 3070 a little over a week ago. That card has an MSRP starting as low as $500 USD for their "Founder's Edition" model, which does make it over 25% more expensive than some of the lower-priced 5700 XT cards, but it can be around 40-50% faster in demanding games at higher resolutions like 1440p and 4K, and includes hardware support for raytraced lighting effects, which will undoubtedly become much more common over the coming years. And compared to some of the more premium models of the 5700 XT, like those being discussed here, the price difference might be as little as 10-15%. It's hard to recommend any $440-$460 5700 XT when significantly faster cards are likely to be available for just a little more relatively soon (at least when looking at US pricing). Nvidia is also rumored to be launching a 3060 Ti soon, and I would expect it to be priced similar to the 5700 XT, while being somewhat faster and also including raytracing support.
And AMD is launching new cards too, albeit at somewhat higher price points initially. The Radeon RX 6800 is set to be priced starting at $580 when it goes on sale later this month, and performance is expected to be roughly in-between Nvidia's 3070 and 3080, for the most part. And I would expect them to launch new cards around this price range as well, though it's difficult to say exactly when. It might not be until after the new year. Even if it takes a few months before we start seeing lower-priced 6000-series cards from them though, we might see discounts on 5700 XTs relatively soon.