I'm trying to learn topology by modeling the Logitech G600. I started with the top cover, but even at the 2nd try, I still find my topology a little bit messy. I feel the most difficult aspect lies in the two big holes (covered by red lines) representing the mouse wheel and the two extra buttons. It requires more vertices at the edges to smooth it out, thereby rendering the topology messy. How can I improve the topology of this model?
Blender file: Logitech G600 Model