<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def findXScreens(self):
 qapp = QtCore.QCoreApplication.instance() if not qapp: # QApplication has not been started return screens = qapp.screens() """ let's find out which screens are virtual screen, siblings: One big virtual desktop: A [A, B, C] B [A, B, C] C [A, B, C] A & B in one xscreen, C in another: A [A, B] B [A, B] C [C] """

        virtual_screens = set()
        for screen in screens:
            # if screen has been deemed as "virtual", don't check its siblings
            if (screen not in virtual_screens):
                siblings = screen.virtualSiblings()
                # remove the current screen under scrutiny from the siblings
                # list
                virtual_screens.update(set(siblings).difference(set([screen])))
                # .. the ones left over are virtual

        # print("GPUHandler: findXScreens: virtual screens",virtual_screens)
        true_screens = list(set(screens) - virtual_screens)

        # sort'em
        for screen in true_screens:
            self.true_screens.insert(screens.index(screen), screen)

        print("GPUHandler: findXScreens: true screens:", self.true_screens)