prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Pyside2 looking different from when running as script.
  Hi. Im using latest development version.
  
  As you can see when i run my test script:
  ```
  from PySide2 import QtCore, QtGui, QtWidgets
  
  class Ui_MainWindow(object):
      def setupUi(self, MainWindow):
          MainWindow.setObjectName("MainWindow")
          MainWindow.resize(800, 600)
          self.centralwidget = QtWidgets.QWidget(MainWindow)
          self.centralwidget.setObjectName("centralwidget")
          self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)
          self.gridLayout.setObjectName("gridLayout")
          self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
          self.tabWidget.setObjectName("tabWidget")
          self.tab = QtWidgets.QWidget()
          self.tab.setObjectName("tab")
          self.pushButton = QtWidgets.QPushButton(self.tab)
          self.pushButton.setGeometry(QtCore.QRect(150, 90, 97, 34))
          self.pushButton.setObjectName("pushButton")
          self.tableWidget = QtWidgets.QTableWidget(self.tab)
          self.tableWidget.setGeometry(QtCore.QRect(140, 150, 256, 192))
          self.tableWidget.setObjectName("tableWidget")
          self.tableWidget.setColumnCount(3)
          self.tableWidget.setRowCount(0)
          item = QtWidgets.QTableWidgetItem()
          self.tableWidget.setHorizontalHeaderItem(0, item)
          item = QtWidgets.QTableWidgetItem()
          self.tableWidget.setHorizontalHeaderItem(1, item)
          item = QtWidgets.QTableWidgetItem()
          self.tableWidget.setHorizontalHeaderItem(2, item)
          self.tabWidget.addTab(self.tab, "")
          self.tab_2 = QtWidgets.QWidget()
          self.tab_2.setObjectName("tab_2")
          self.tabWidget.addTab(self.tab_2, "")
          self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
          MainWindow.setCentralWidget(self.centralwidget)
          self.menubar = QtWidgets.QMenuBar(MainWindow)
          self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 30))
          self.menubar.setObjectName("menubar")
          MainWindow.setMenuBar(self.menubar)
          self.statusbar = QtWidgets.QStatusBar(MainWindow)
          self.statusbar.setObjectName("statusbar")
          MainWindow.setStatusBar(self.statusbar)
  
          self.retranslateUi(MainWindow)
          QtCore.QMetaObject.connectSlotsByName(MainWindow)
  
      def retranslateUi(self, MainWindow):
          _translate = QtCore.QCoreApplication.translate
          MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
          self.pushButton.setText(_translate("MainWindow", "PushButton"))
          item = self.tableWidget.horizontalHeaderItem(0)
          item.setText(_translate("MainWindow", "New Column"))
          item = self.tableWidget.horizontalHeaderItem(1)
          item.setText(_translate("MainWindow", "New Column"))
          item = self.tableWidget.horizontalHeaderItem(2)
          item.setText(_translate("MainWindow", "New Column"))
          self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Tab 1"))
          self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Tab 2"))
  
  
  if __name__ == "__main__":
      import sys
      app = QtWidgets.QApplication(sys.argv)
      MainWindow = QtWidgets.QMainWindow()
      ui = Ui_MainWindow()
      ui.setupUi(MainWindow)
      MainWindow.show()
      sys.exit(app.exec_())
  ```
  
  from console:
  ![pyside2](https://user-images.githubusercontent.com/28787979/37112961-3d2cc8c8-2244-11e8-95f7-610edfc777a9.png)
  and as the binary pyinstaller creates:
  ![pyside2withpyinstaller](https://user-images.githubusercontent.com/28787979/37112962-3d4e5b00-2244-11e8-95d4-54ce0661d262.png)
  
  It looks very different(ignore the blue line, that's something that happened recently on this comp for some reason but the problem existed previous to this). Perhaps this has something to do with the themes in qt5_plugins? Anyway, how can i fix this? Ideally it would be possible to bundle my theme "breeze dark" with the application so the user has the ability to use that.
  
  </issue>
  <code>
  [start of PyInstaller/hooks/hook-PySide2.QtGui.py]
  1 #-----------------------------------------------------------------------------
  2 # Copyright (c) 2013-2018, PyInstaller Development Team.
  3 #
  4 # Distributed under the terms of the GNU General Public License with exception
  5 # for distributing bootloader.
  6 #
  7 # The full license is in the file COPYING.txt, distributed with this software.
  8 #-----------------------------------------------------------------------------
  9 
  10 from PyInstaller.utils.hooks import qt_plugins_binaries
  11 from PyInstaller.compat import is_linux
  12 
  13 hiddenimports = ['PySide2.QtCore']
  14 
  15 binaries = []
  16 binaries.extend(qt_plugins_binaries('accessible', namespace='PySide2'))
  17 binaries.extend(qt_plugins_binaries('iconengines', namespace='PySide2'))
  18 binaries.extend(qt_plugins_binaries('imageformats', namespace='PySide2'))
  19 binaries.extend(qt_plugins_binaries('inputmethods', namespace='PySide2'))
  20 binaries.extend(qt_plugins_binaries('graphicssystems', namespace='PySide2'))
  21 binaries.extend(qt_plugins_binaries('platforms', namespace='PySide2'))
  22 
  23 if is_linux:
  24     binaries.extend(qt_plugins_binaries('platformthemes', namespace='PySide2'))
  25
  [end of PyInstaller/hooks/hook-PySide2.QtGui.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/PyInstaller/hooks/hook-PySide2.QtGui.py b/PyInstaller/hooks/hook-PySide2.QtGui.py
  --- a/PyInstaller/hooks/hook-PySide2.QtGui.py
  +++ b/PyInstaller/hooks/hook-PySide2.QtGui.py
  @@ -19,6 +19,7 @@
   binaries.extend(qt_plugins_binaries('inputmethods', namespace='PySide2'))
   binaries.extend(qt_plugins_binaries('graphicssystems', namespace='PySide2'))
   binaries.extend(qt_plugins_binaries('platforms', namespace='PySide2'))
  +binaries.extend(qt_plugins_binaries('styles', namespace='PySide2'))
   
   if is_linux:
       binaries.extend(qt_plugins_binaries('platformthemes', namespace='PySide2'))
  
verification_info: {"golden_diff": "diff --git a/PyInstaller/hooks/hook-PySide2.QtGui.py b/PyInstaller/hooks/hook-PySide2.QtGui.py\n--- a/PyInstaller/hooks/hook-PySide2.QtGui.py\n+++ b/PyInstaller/hooks/hook-PySide2.QtGui.py\n@@ -19,6 +19,7 @@\n binaries.extend(qt_plugins_binaries('inputmethods', namespace='PySide2'))\n binaries.extend(qt_plugins_binaries('graphicssystems', namespace='PySide2'))\n binaries.extend(qt_plugins_binaries('platforms', namespace='PySide2'))\n+binaries.extend(qt_plugins_binaries('styles', namespace='PySide2'))\n \n if is_linux:\n     binaries.extend(qt_plugins_binaries('platformthemes', namespace='PySide2'))\n", "issue": "Pyside2 looking different from when running as script.\nHi. Im using latest development version.\r\n\r\nAs you can see when i run my test script:\r\n```\r\nfrom PySide2 import QtCore, QtGui, QtWidgets\r\n\r\nclass Ui_MainWindow(object):\r\n    def setupUi(self, MainWindow):\r\n        MainWindow.setObjectName(\"MainWindow\")\r\n        MainWindow.resize(800, 600)\r\n        self.centralwidget = QtWidgets.QWidget(MainWindow)\r\n        self.centralwidget.setObjectName(\"centralwidget\")\r\n        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)\r\n        self.gridLayout.setObjectName(\"gridLayout\")\r\n        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)\r\n        self.tabWidget.setObjectName(\"tabWidget\")\r\n        self.tab = QtWidgets.QWidget()\r\n        self.tab.setObjectName(\"tab\")\r\n        self.pushButton = QtWidgets.QPushButton(self.tab)\r\n        self.pushButton.setGeometry(QtCore.QRect(150, 90, 97, 34))\r\n        self.pushButton.setObjectName(\"pushButton\")\r\n        self.tableWidget = QtWidgets.QTableWidget(self.tab)\r\n        self.tableWidget.setGeometry(QtCore.QRect(140, 150, 256, 192))\r\n        self.tableWidget.setObjectName(\"tableWidget\")\r\n        self.tableWidget.setColumnCount(3)\r\n        self.tableWidget.setRowCount(0)\r\n        item = QtWidgets.QTableWidgetItem()\r\n        self.tableWidget.setHorizontalHeaderItem(0, item)\r\n        item = QtWidgets.QTableWidgetItem()\r\n        self.tableWidget.setHorizontalHeaderItem(1, item)\r\n        item = QtWidgets.QTableWidgetItem()\r\n        self.tableWidget.setHorizontalHeaderItem(2, item)\r\n        self.tabWidget.addTab(self.tab, \"\")\r\n        self.tab_2 = QtWidgets.QWidget()\r\n        self.tab_2.setObjectName(\"tab_2\")\r\n        self.tabWidget.addTab(self.tab_2, \"\")\r\n        self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)\r\n        MainWindow.setCentralWidget(self.centralwidget)\r\n        self.menubar = QtWidgets.QMenuBar(MainWindow)\r\n        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 30))\r\n        self.menubar.setObjectName(\"menubar\")\r\n        MainWindow.setMenuBar(self.menubar)\r\n        self.statusbar = QtWidgets.QStatusBar(MainWindow)\r\n        self.statusbar.setObjectName(\"statusbar\")\r\n        MainWindow.setStatusBar(self.statusbar)\r\n\r\n        self.retranslateUi(MainWindow)\r\n        QtCore.QMetaObject.connectSlotsByName(MainWindow)\r\n\r\n    def retranslateUi(self, MainWindow):\r\n        _translate = QtCore.QCoreApplication.translate\r\n        MainWindow.setWindowTitle(_translate(\"MainWindow\", \"MainWindow\"))\r\n        self.pushButton.setText(_translate(\"MainWindow\", \"PushButton\"))\r\n        item = self.tableWidget.horizontalHeaderItem(0)\r\n        item.setText(_translate(\"MainWindow\", \"New Column\"))\r\n        item = self.tableWidget.horizontalHeaderItem(1)\r\n        item.setText(_translate(\"MainWindow\", \"New Column\"))\r\n        item = self.tableWidget.horizontalHeaderItem(2)\r\n        item.setText(_translate(\"MainWindow\", \"New Column\"))\r\n        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate(\"MainWindow\", \"Tab 1\"))\r\n        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate(\"MainWindow\", \"Tab 2\"))\r\n\r\n\r\nif __name__ == \"__main__\":\r\n    import sys\r\n    app = QtWidgets.QApplication(sys.argv)\r\n    MainWindow = QtWidgets.QMainWindow()\r\n    ui = Ui_MainWindow()\r\n    ui.setupUi(MainWindow)\r\n    MainWindow.show()\r\n    sys.exit(app.exec_())\r\n```\r\n\r\nfrom console:\r\n![pyside2](https://user-images.githubusercontent.com/28787979/37112961-3d2cc8c8-2244-11e8-95f7-610edfc777a9.png)\r\nand as the binary pyinstaller creates:\r\n![pyside2withpyinstaller](https://user-images.githubusercontent.com/28787979/37112962-3d4e5b00-2244-11e8-95d4-54ce0661d262.png)\r\n\r\nIt looks very different(ignore the blue line, that's something that happened recently on this comp for some reason but the problem existed previous to this). Perhaps this has something to do with the themes in qt5_plugins? Anyway, how can i fix this? Ideally it would be possible to bundle my theme \"breeze dark\" with the application so the user has the ability to use that.\n", "before_files": [{"content": "#-----------------------------------------------------------------------------\n# Copyright (c) 2013-2018, PyInstaller Development Team.\n#\n# Distributed under the terms of the GNU General Public License with exception\n# for distributing bootloader.\n#\n# The full license is in the file COPYING.txt, distributed with this software.\n#-----------------------------------------------------------------------------\n\nfrom PyInstaller.utils.hooks import qt_plugins_binaries\nfrom PyInstaller.compat import is_linux\n\nhiddenimports = ['PySide2.QtCore']\n\nbinaries = []\nbinaries.extend(qt_plugins_binaries('accessible', namespace='PySide2'))\nbinaries.extend(qt_plugins_binaries('iconengines', namespace='PySide2'))\nbinaries.extend(qt_plugins_binaries('imageformats', namespace='PySide2'))\nbinaries.extend(qt_plugins_binaries('inputmethods', namespace='PySide2'))\nbinaries.extend(qt_plugins_binaries('graphicssystems', namespace='PySide2'))\nbinaries.extend(qt_plugins_binaries('platforms', namespace='PySide2'))\n\nif is_linux:\n    binaries.extend(qt_plugins_binaries('platformthemes', namespace='PySide2'))\n", "path": "PyInstaller/hooks/hook-PySide2.QtGui.py"}]}