← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~trb143/openlp/songediting into lp:openlp

 

Tim Bentley has proposed merging lp:~trb143/openlp/songediting into lp:openlp.

    Requested reviews:
    OpenLP Core (openlp-core)


Verse Tagging is feature complete for now.
 - Fix problems with Theme Edit and Images from Last Merge
 - Clean up VerseEdit Dialog
 - Add additional Tags as per email discussion 
 - Build Dynamic Icons which could support i18n
 - Make slidecontroller icons visit 1st slide on verse etc

-- 
https://code.launchpad.net/~trb143/openlp/songediting/+merge/15544
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/lib/__init__.py'
--- openlp/core/lib/__init__.py	2009-11-30 20:29:26 +0000
+++ openlp/core/lib/__init__.py	2009-12-02 12:20:26 +0000
@@ -105,8 +105,25 @@
             ButtonIcon.addPixmap(
                 QtGui.QPixmap(icon), QtGui.QIcon.Normal, QtGui.QIcon.Off)
         else:
-            ButtonIcon.addPixmap(QtGui.QPixmap.fromImage(QtGui.QImage(icon)),
-                QtGui.QIcon.Normal, QtGui.QIcon.Off)
+            if len(icon) > 2:
+                ButtonIcon.addPixmap(QtGui.QPixmap.fromImage(QtGui.QImage(icon)),
+                    QtGui.QIcon.Normal, QtGui.QIcon.Off)
+            else:
+                #lets build a Icon from text
+                pmap = QtGui.QPixmap(u':/pages/slide.png')
+                painter = QtGui.QPainter(pmap)
+                painter.setPen(QtGui.QColor(QtGui.QColor.black))
+                font = QtGui.QFont()
+                font.setFamily(u'Arial')
+                font.setBold(True)
+                font.setPointSize(12)
+                painter.setFont(font)
+                metrics = QtGui.QFontMetrics(font)
+                painter.drawText(5, 3 + metrics.ascent(), icon)
+                painter.end()
+                ButtonIcon.addPixmap(
+                    pmap, QtGui.QIcon.Normal, QtGui.QIcon.Off)
+
     elif type(icon) is QtGui.QImage:
         ButtonIcon = QtGui.QIcon()
         ButtonIcon.addPixmap(

=== modified file 'openlp/core/lib/mediamanageritem.py'
--- openlp/core/lib/mediamanageritem.py	2009-11-30 20:29:26 +0000
+++ openlp/core/lib/mediamanageritem.py	2009-12-02 12:20:26 +0000
@@ -213,26 +213,26 @@
             self.addToolbarButton(
                 u'Load %s' % self.PluginNameShort,
                 u'%s %s' % (self.trUtf8('Load a new'), self.PluginNameVisible),
-                u':%s_load.png' % self.IconPath, self.onFileClick)
+                u':/%s_load.png' % self.IconPath, self.onFileClick)
         ## New Button ##
         if self.hasNewIcon:
             self.addToolbarButton(
                 u'New %s' % self.PluginNameShort,
                 u'%s %s' % (self.trUtf8('Add a new'), self.PluginNameVisible),
-                u':%s_new.png' % self.IconPath, self.onNewClick)
+                u':/%s_new.png' % self.IconPath, self.onNewClick)
         ## Edit Button ##
         if self.hasEditIcon:
             self.addToolbarButton(
                 u'Edit %s' % self.PluginNameShort,
                 u'%s %s' % (self.trUtf8('Edit the selected'),
                     self.PluginNameVisible),
-                u':%s_edit.png' % self.IconPath, self.onEditClick)
+                u':/%s_edit.png' % self.IconPath, self.onEditClick)
         ## Delete Button ##
         if self.hasDeleteIcon:
             self.addToolbarButton(
                 u'Delete %s' % self.PluginNameShort,
                 self.trUtf8('Delete the selected item'),
-                u':%s_delete.png' % self.IconPath, self.onDeleteClick)
+                u':/%s_delete.png' % self.IconPath, self.onDeleteClick)
         ## Separator Line ##
         self.addToolbarSeparator()
         ## Preview ##
@@ -269,7 +269,7 @@
         if self.hasEditIcon:
             self.ListView.addAction(
                 contextMenuAction(
-                    self.ListView, u':%s_new.png' % self.IconPath,
+                    self.ListView, u':/%s_new.png' % self.IconPath,
                     u'%s %s' % (self.trUtf8('&Edit'), self.PluginNameVisible),
                     self.onEditClick))
             self.ListView.addAction(contextMenuSeparator(self.ListView))

=== modified file 'openlp/core/lib/rendermanager.py'
--- openlp/core/lib/rendermanager.py	2009-11-30 20:29:26 +0000
+++ openlp/core/lib/rendermanager.py	2009-12-02 12:20:26 +0000
@@ -206,7 +206,7 @@
         footer.append(u'Public Domain')
         footer.append(u'CCLI 123456')
         formatted = self.renderer.format_slide(verse, False)
-        return self.renderer.generate_frame_from_lines(formatted[0], footer)
+        return self.renderer.generate_frame_from_lines(formatted[0], footer)[u'main']
 
     def format_slide(self, words):
         """

=== modified file 'openlp/core/lib/serviceitem.py'
--- openlp/core/lib/serviceitem.py	2009-11-30 20:29:26 +0000
+++ openlp/core/lib/serviceitem.py	2009-12-02 12:20:26 +0000
@@ -293,7 +293,7 @@
         if self.service_item_type == ServiceItemType.Text:
             return self.render_individual(row)
         else:
-            return self._raw_frames[row][u'image']
+            return {u'main':self._raw_frames[row][u'image'], u'trans':None}
 
     def get_frame_title(self, row=0):
         """

=== modified file 'openlp/core/lib/toolbar.py'
--- openlp/core/lib/toolbar.py	2009-11-30 20:29:26 +0000
+++ openlp/core/lib/toolbar.py	2009-12-02 12:20:26 +0000
@@ -106,7 +106,8 @@
         ``title``
             The title of the icon to search for.
         """
-        if self.icons.has_key(title):
+        title = QtCore.QString(title)
+        if self.icons[title]:
             return self.icons[title]
         else:
             self.log.error(u'getIconFromTitle - no icon for %s' % title)

=== modified file 'openlp/core/resources.py'
--- openlp/core/resources.py	2009-11-30 20:29:26 +0000
+++ openlp/core/resources.py	2009-12-02 12:20:26 +0000
@@ -11237,348 +11237,6 @@
 \x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
 \x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
 \xae\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
-\x00\x00\x01\x86\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x38\x49\x44\x41\x54\x38\x8d\xbd\
-\x95\x4b\x6e\x83\x40\x0c\x86\x7f\x7b\xa6\x4a\xc4\x86\x93\x74\xc5\
-\x22\xb7\x8e\x1a\xf5\x10\x51\x54\xb1\xea\x49\x60\x93\x82\x79\x74\
-\xc1\x43\xe3\x61\x60\x02\x95\x6a\x09\xc9\x83\xf5\x7f\xf8\xa5\x01\
-\x18\xed\x7e\xff\xc2\x5f\xcd\x65\x90\x1b\x78\x3c\xf2\xbe\x69\x9a\
-\x43\x50\x6b\x2d\x2e\x97\x6c\xe6\x59\x37\xf8\x7c\xfe\x20\xcb\xde\
-\xd1\xf7\xfb\xa0\x44\x40\x9e\x7f\xeb\x0f\xb9\x07\x11\x01\x11\xa1\
-\x6d\x5b\xa4\x69\x1a\x05\x16\x45\x31\x66\x6b\x20\x22\x5b\xe0\x1a\
-\xcc\x0c\xa2\x2e\x0a\x2d\xcb\x12\x44\x43\xe5\xcc\x0c\x91\x7a\x0b\
-\xdc\x80\xd9\x80\x79\x04\x13\x61\xad\x2f\xcc\xec\xf8\x06\x22\x7a\
-\x36\x8b\x56\x18\x63\xd0\x75\xf1\x8c\x8d\x31\xca\x8f\xb4\x42\x60\
-\xad\x85\xb5\xea\xf5\x6c\x55\x55\xe1\x74\x3a\x2d\x32\x0e\x81\xd9\
-\x3d\xc4\x56\x6d\xe8\xa5\xcc\xfe\xf4\x10\xd1\x42\xab\x52\xab\xeb\
-\x61\x00\x6d\xdb\xaa\x52\x01\x00\x44\x78\x73\xfa\xed\x66\xec\x6a\
-\x83\xe0\x69\x00\xbe\x68\x2d\xfb\x90\x36\x08\x9e\x86\x36\xad\xd1\
-\x94\x69\xc8\x27\x6f\x5b\xfc\x81\x2b\x30\xb3\x57\xbe\x2b\xde\x58\
-\xbd\x90\x56\xd5\x63\x4c\xbc\x05\x6b\xe6\x6b\xff\x0b\xac\x2e\xbb\
-\x9d\x60\xad\x55\xe0\x57\xb6\x61\xcd\x7c\xed\xeb\xe0\xc8\x5d\x7a\
-\x1c\x1c\xb1\x08\xd8\x5b\xb7\x5d\x60\xad\x55\x7b\x9c\x24\x67\x5c\
-\xaf\x1f\x87\xfe\x20\x49\x72\x0e\x07\x6f\xb7\xcf\x7d\xb4\x08\xe3\
-\x17\x7d\x69\x75\x19\xa6\x9d\x5d\xfd\x00\x00\x00\x00\x49\x45\x4e\
-\x44\xae\x42\x60\x82\
-\x00\x00\x01\x96\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x48\x49\x44\x41\x54\x38\x8d\xb5\
-\x95\xcf\x6a\xc3\x30\x0c\xc6\x3f\x49\x3e\x94\x5c\xd6\x17\xd9\x29\
-\x87\xbe\x75\x59\xd9\x43\x94\x32\x72\xda\x8b\x34\x25\xd0\x11\xdb\
-\xf1\x0e\x99\x33\xdb\x71\xfe\x8e\x09\x0c\x49\x3e\xf4\x93\x2c\xc9\
-\x0e\xf0\x63\xd7\xeb\x07\xfe\x6a\x21\x83\x42\xe1\x76\xab\x9c\x31\
-\x66\x17\x54\x29\x85\xd3\xa9\x1c\x78\x2a\x14\x9f\xcf\x2f\x94\xe5\
-\x2b\x9c\xdb\x06\x25\x02\xaa\xea\x33\x0e\x14\xbe\x68\xad\x41\x44\
-\xb0\xd6\xe2\xe5\x78\x9c\x85\xd5\xf7\x7b\x90\xad\x40\x6b\x1d\xe9\
-\x1c\x83\x5b\x30\x33\x88\xfa\x1d\x3d\xea\x1a\x70\x6e\x58\x8f\xba\
-\xee\xbf\x01\x20\xa2\x61\x31\x33\xb4\x6e\xe7\x32\x36\x60\x16\x30\
-\x77\x7d\x54\x66\x34\x4d\xf3\x9b\x05\xf3\xc4\xb3\x40\xeb\xb8\x37\
-\xa3\x52\x88\x08\xba\xae\x07\x8b\xc8\x64\x29\x42\x4d\x64\x5c\x8a\
-\x2c\xd8\x5a\x3b\xca\x2a\xb5\x50\x5b\x04\x1b\x63\x86\x9a\x6d\x01\
-\x13\x11\xd2\x31\x8d\xc0\x6d\xdb\x46\x4e\x39\xb0\x28\x95\xd5\xbc\
-\x6f\x16\xec\x1b\x10\x82\x89\xa8\x1f\xd4\xc0\x5c\xd7\x21\x0d\x39\
-\xdb\x3c\xdf\x34\x3f\x6e\xe4\xb3\x4a\x4e\x4c\x1c\x26\xf6\xcd\x82\
-\x99\x93\x29\xf0\xc0\x24\xe3\xdc\xd1\x4c\x7d\xa3\x1d\x89\x4c\x34\
-\x2b\x38\x24\xd9\x40\x19\xdf\x75\xe0\x85\x6c\x57\x80\x73\xd5\x5b\
-\x67\xa9\x6f\x04\x9e\x9b\xdb\x25\x4b\x7d\xff\x0d\xac\xe6\xc4\x5c\
-\x93\x76\x82\x83\x91\xd9\x78\xdb\xa7\xe3\x16\x81\x8b\xe2\x80\xf3\
-\xf9\x6d\xd7\x1f\xa4\x28\x0e\x79\xf1\x72\x79\xdf\x46\x5b\x60\x7c\
-\x03\x40\x6b\x83\xc2\xc8\x7e\x8a\xf2\x00\x00\x00\x00\x49\x45\x4e\
-\x44\xae\x42\x60\x82\
-\x00\x00\x01\x90\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x42\x49\x44\x41\x54\x38\x8d\xb5\
-\x95\x4d\x6e\x83\x30\x10\x85\xdf\xcc\x38\x52\xc2\x26\x27\xe9\x2a\
-\x8b\xdc\x3a\x6a\xd4\x43\x44\x51\xc5\xaa\x27\x21\x0b\xa8\x30\xc6\
-\x59\x10\x23\xdb\x31\xb6\xa0\xea\x48\x16\x86\xe7\xf7\xf9\x67\x06\
-\x00\x5e\x71\xbb\x7d\xe3\xaf\xe1\x33\xc8\x17\xee\xf7\xda\x0e\xc3\
-\xb0\x09\xaa\x94\xc2\xf9\x7c\x9a\x79\xca\x17\xbb\xee\x17\xa7\xd3\
-\x07\xac\x5d\x07\x25\x02\xea\xfa\x27\x9c\xc8\xbf\xd1\x5a\x83\x88\
-\x60\x8c\xc1\xf1\x78\x2c\x02\x9b\xa6\x79\xad\x56\xa0\xb5\xce\x81\
-\x7b\x30\x33\x88\xc6\x22\xf4\xf1\x78\x80\x68\xda\x39\x33\x43\xeb\
-\x3e\xd0\x39\x04\x0f\x60\x16\x30\x7b\x8f\x89\x92\x8d\x99\xbd\x26\
-\xd0\x7a\xc8\x81\x35\x44\x04\x22\x12\x0c\xea\xda\x16\xb0\x16\x5d\
-\xdb\xce\x7d\x37\xce\xb5\xc2\x51\x68\x28\xa5\xa0\x54\xf0\x18\x87\
-\xc3\x61\xde\xf2\xbc\x22\xaf\x5f\x04\x97\x4a\x6d\x09\x4c\x44\x6f\
-\xde\x00\xdc\xf7\x53\x02\x8c\x31\x10\x91\xe9\xea\xe9\xbb\xdd\x2e\
-\x09\xf6\xbd\x49\xb0\x4b\x80\x33\xc5\x67\xed\xc2\x5a\xfb\x06\x8e\
-\x93\x17\x80\xc7\x71\x2a\x33\x57\x46\x4b\x91\xd2\x9d\x37\x09\x66\
-\x4e\xaf\x10\xa9\x89\xa2\xd7\x33\xf6\x06\x60\x91\x70\x7b\x29\xc0\
-\xd2\x44\xb1\x97\x73\xe2\x9a\x28\x80\xf3\x67\x9b\x07\x87\xde\x00\
-\x1c\x67\x7a\x4d\xc4\xde\x7f\x03\xab\x9c\x98\xac\x86\x6d\xe0\xa8\
-\xdc\x56\x7c\xf1\xb3\xe5\x56\x55\x7b\x5c\x2e\x9f\x9b\xfe\x20\x55\
-\xb5\x4f\x8b\xd7\xeb\xd7\x3a\x5a\x81\xf1\x04\xf8\x7d\x78\x31\xa0\
-\xf0\x5d\x0e\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x8c\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x3e\x49\x44\x41\x54\x38\x8d\xbd\
-\x95\xcb\x6e\x83\x30\x10\x45\xef\xcc\x18\x29\xf6\x86\x2f\xe9\x8a\
-\x45\xfe\x3a\x6a\xd4\x8f\x88\xa2\x8a\x55\xbf\x04\xb2\x70\x85\x79\
-\x74\x11\x5e\x76\x00\x87\x54\xed\xac\x0c\xa3\x7b\x98\xc7\x05\x80\
-\x3e\x2e\x97\x4f\xfc\x36\xe6\x0c\x9a\x27\xae\xd7\xbc\xab\xeb\xfa\
-\x25\xa8\x52\x0a\xc7\x63\x36\xf2\xd4\x3c\x69\xed\x37\xb2\xec\x0d\
-\x5d\xb7\x0f\x4a\x04\xe4\xf9\x97\xff\xa0\xf9\x85\x73\x0e\x44\x84\
-\xa6\x69\x90\xa6\x69\x14\x58\x14\x45\x5f\xad\xc0\x39\xb7\x05\xae\
-\xc0\xcc\x20\x6a\xa3\xd0\xb2\x2c\x41\x74\xef\x9c\x99\xe1\x5c\xb5\
-\x05\xae\xc1\x2c\x60\xee\xc1\xe4\xad\xc0\x0b\xbe\xdd\xa6\x33\x0b\
-\x9c\xf3\x77\xf3\x30\x0a\x11\x41\xdb\xf6\xe0\x7e\xd8\xd6\x5a\x68\
-\xad\x61\xad\x05\x00\x68\x63\x20\x22\xa3\x4e\x24\x3a\x0a\x07\xa5\
-\x14\x94\xf2\x6e\x43\x6b\x3d\xb6\x3c\x55\x39\x9d\xa3\xe0\x98\xd5\
-\xd6\xc0\x44\xf4\xa0\xf5\xc0\x55\x75\x5f\x40\xd3\x34\x5e\xab\x43\
-\x24\x49\xb2\x08\x9e\x6b\x17\xc1\xc3\x02\x42\x51\xac\xfa\xb9\x76\
-\x11\x3c\x2c\x6d\xb0\xd1\x96\x2b\x28\xc8\x8d\x0b\x5f\x02\x33\x3f\
-\xb6\xff\xec\x6b\x18\x6a\xbd\x7e\x44\xe2\x23\x58\x8b\x50\xfb\x5f\
-\xe0\xf5\x99\xc6\xc1\xbe\xd6\x03\x3f\xe3\x86\xb5\x08\xb5\x7f\x06\
-\x56\x5b\x49\x00\xeb\x96\x0b\xdc\x12\x01\x07\x76\xdb\xf1\xc5\x0f\
-\xb5\x1e\xd8\x98\x03\x4e\xa7\xf7\x97\xfe\x20\xc6\x1c\x96\x93\xe7\
-\xf3\xc7\x3e\x5a\x84\xf1\x03\x57\x37\x73\x33\xd7\x27\x31\x9e\x00\
-\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x84\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x36\x49\x44\x41\x54\x38\x8d\xbd\
-\x95\x4b\x6e\x83\x30\x10\x86\xff\x19\x1b\x25\x62\xc3\x49\xba\x62\
-\x91\x5b\x47\x8d\x7a\x88\x28\xaa\x58\xf5\x24\x74\x93\x82\x31\x64\
-\x51\x1e\x1e\x63\xe3\x92\xaa\x9d\x95\xcd\xf0\x7f\x9e\x17\x06\x18\
-\xed\x7a\x7d\xc7\x6f\xcd\x65\x90\xeb\xb8\xdd\xaa\xa1\xeb\xba\xa7\
-\xa0\x5a\x6b\x9c\x4e\xe5\xcc\xd3\xae\xf3\x7e\xff\x42\x59\xbe\x60\
-\x18\xf6\x41\x89\x80\xaa\xfa\x90\x07\xb9\x1b\x63\x0c\x88\x08\xd6\
-\x5a\x14\x45\x91\x04\xd6\x75\x3d\x46\xab\x60\x8c\xd9\x02\xb7\x60\
-\x66\x10\xf5\x4b\x28\x11\xfb\xac\x6b\xd0\xe8\x67\x66\x18\xd3\x6e\
-\x81\x3b\x30\x2b\x30\x8f\xe0\x58\x4d\x88\xc0\xcc\xf3\x96\x59\xc1\
-\x18\xd9\x9b\x55\x29\x94\x52\xe8\xfb\x3e\x1a\xe9\x64\x4a\x29\xb1\
-\x4e\x94\xc2\x40\x6b\x0d\xad\xc5\xe3\xd9\x9a\xa6\xc1\xe1\x70\x18\
-\xa3\x5c\x22\x4e\x82\x53\xa3\x26\xd3\x5f\xd6\x44\xb4\xd2\x0a\x70\
-\xdb\x7e\x37\xc0\x5a\x2b\x52\x9d\x2c\xcb\xb2\x20\xd8\xd5\x06\xc1\
-\x53\x03\x7c\x51\x2a\x7a\x57\x1b\x04\x4f\x4d\x23\x7f\xcc\x02\x63\
-\xe7\xbf\xe3\x37\x5c\x80\x99\xd7\xe9\x03\x58\x8f\x5d\xe0\x20\x5f\
-\x2b\xf2\x51\x2a\x5d\x82\x98\xf9\xda\xff\x02\xc7\x3f\xe1\x34\x58\
-\x6a\x05\xf8\x27\xd3\x10\x33\x5f\xfb\x67\x60\xbd\xe5\xdc\xba\xdd\
-\x76\x82\xbd\x71\xdb\x71\xe3\xfb\x5a\x01\xce\xf3\x23\xce\xe7\xd7\
-\xa7\xfe\x20\x79\x7e\x0c\x3b\x2f\x97\xb7\x7d\xb4\x04\xe3\x01\x08\
-\x54\x6c\x32\xa7\xc3\xa6\x55\x00\x00\x00\x00\x49\x45\x4e\x44\xae\
-\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
-\x00\x00\x01\x92\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x44\x49\x44\x41\x54\x38\x8d\xbd\
-\x95\x4d\x6e\xc2\x30\x10\x85\xdf\xcc\x64\x81\xb2\xc9\x49\xba\x62\
-\xc1\xad\x51\x51\x0f\x81\x50\xc5\xaa\x17\x21\x08\x91\x2a\x76\x32\
-\x2c\xa8\xc1\xe3\x24\x4e\x43\xa5\x3e\x29\xca\xcf\xd3\xfb\x3c\x9a\
-\xb1\x1c\xe0\x47\xfb\xfd\x27\xfe\xaa\x98\x41\xb1\x71\x38\x1c\xd5\
-\x7b\xff\x12\xb4\x28\x0a\x6c\x36\xeb\x07\xaf\x88\xcd\xa6\xf9\xc6\
-\x7a\xfd\x06\xd5\x65\x50\x22\xe0\x78\xfc\xb2\x0b\xc5\x2f\xce\x39\
-\x10\x11\xba\xae\x43\x55\x55\xf7\xc4\x84\xea\xd3\x29\xaa\x56\xe0\
-\x9c\x33\x3e\x5b\x70\x0b\x66\x06\x11\x59\xa8\x2a\xa0\x8a\x73\x5d\
-\xe3\x5c\xd7\x80\x2a\x88\xe8\x71\x31\x33\x9c\x6b\x73\x15\x7b\x30\
-\x0b\x98\x7b\x03\xbd\x5c\x2e\xf7\x2a\xf8\x59\x87\x7d\x16\x38\x67\
-\x67\x33\x68\x85\x88\xa0\xef\xef\xe0\xe6\x7a\x05\x9a\x06\x22\x32\
-\x68\x45\xfc\x4d\x64\xd8\x8a\x51\x70\xd7\x75\x83\xaa\x52\xc5\xde\
-\x2c\xd8\x7b\xff\xe8\xd9\x12\x30\x11\x21\xdd\xa6\x06\xdc\xb6\xad\
-\x09\x85\xfb\x58\x2b\xd2\x45\x43\x76\x14\x1c\x06\x90\x03\x02\x80\
-\xaa\x0e\xc0\xd9\xe1\x85\xa1\x51\x66\xff\x4e\xf9\x21\x1b\x64\x96\
-\x65\x1e\xaf\xf0\x37\x4a\xb3\x06\x2c\x32\x3d\xac\x39\xa5\xd9\xff\
-\x02\xe7\x7b\x9b\x07\xdb\x6c\xd2\xe3\xa4\xe2\x99\x21\xe6\xb2\x79\
-\xf0\x02\x78\x9a\x2d\x26\x4d\xd5\x27\x74\x0c\x9e\x1c\xda\x33\xe0\
-\x64\xbb\x2d\x38\xf1\xd3\xac\x01\x97\xe5\x0a\xdb\xed\xfb\x4b\x7f\
-\x90\xb2\x5c\x8d\x9b\xbb\xdd\xc7\x32\xda\x0c\xe3\x06\xb8\x4d\x7d\
-\xc2\x38\xb7\xba\xdc\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\
-\x82\
-\x00\x00\x01\x99\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\
-\x01\xbc\xcf\x90\x18\x00\x00\x01\x4b\x49\x44\x41\x54\x38\x8d\xbd\
-\x95\x41\x6e\x83\x30\x10\x45\xff\x8c\x89\x94\x20\x24\x4e\xd2\x55\
-\x16\xb9\x75\x94\xa8\x87\x88\xa2\x8a\x55\x4f\x02\x42\x49\x85\x6d\
-\xdc\x45\x08\x8c\x8d\x65\x4a\xaa\xf6\xaf\x8c\x87\xff\x3c\x9e\x31\
-\x06\x18\x74\xb9\x7c\xe0\xb7\x92\x0c\x92\x81\xeb\xb5\x72\xc6\x98\
-\x97\xa0\x59\x96\xe1\x70\xd8\x8f\xbc\x4c\x06\xef\xf7\x2f\xec\xf7\
-\x6f\x70\x6e\x1d\x94\x08\xa8\xaa\x4f\x7f\x21\xf9\xa0\xb5\x06\x11\
-\xc1\x5a\x8b\xb2\x2c\x17\x81\x75\x5d\x0f\xd9\x2a\x68\xad\x53\xe0\
-\x0e\xcc\x0c\xa2\x7e\x9e\x12\x00\xb9\x95\xa6\x69\x40\xc3\x3c\x33\
-\x43\xeb\x2e\x05\x36\x60\x56\x60\x16\x60\x9a\xda\xd0\xb6\x2d\x00\
-\xa0\x28\x0a\x30\xf3\x38\xcf\xac\xa0\xb5\xdf\x9b\x59\x29\x94\x52\
-\xe8\xfb\xde\x83\xde\x6f\x37\xec\xf2\x1c\x4a\xa9\xf1\xdd\x70\xbc\
-\x50\x8a\x07\xd8\x5a\x3b\x4d\x3a\x87\xdd\x98\x99\xcc\x72\x1a\x2f\
-\x82\x8d\x31\x20\xa2\x87\x89\xbc\x93\x98\x04\x13\x11\xc2\x63\xea\
-\x81\xbb\xae\x9b\x4c\xce\xc1\x5a\x0b\x25\xe2\x9b\xcd\x26\x0a\x96\
-\xde\x28\xf8\xd9\x80\xa7\x49\xd6\x51\xca\x39\x37\x03\x27\x9b\xf7\
-\x6c\x1a\x45\xca\x20\x15\x8b\x8f\x0d\x1f\xe4\x2d\xcb\x1c\xcf\xf0\
-\x27\x0a\xbd\x1e\x58\x29\x7f\x7b\x6b\x14\x7a\xff\x0b\x9c\xae\x6d\
-\x1a\xec\x7b\x83\x1a\xbf\x9e\x71\xe8\xfd\x33\x70\x96\x0a\xce\xbe\
-\x3e\xf9\x1c\x5c\xda\x0b\xe0\xe0\xb8\xad\xb8\xf1\x43\xaf\x07\xce\
-\xf3\x2d\x8e\xc7\xd3\x4b\x7f\x90\x3c\xdf\xc6\x83\xe7\xf3\xfb\x3a\
-\xda\x02\xe3\x1b\x0b\xc0\x79\x3f\x91\xa0\x5e\xb1\x00\x00\x00\x00\
-\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x65\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x16\x00\x00\x00\x16\x08\x06\x00\x00\x00\xc4\xb4\x6c\x3b\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x93\x00\
-\x00\x00\x09\x70\x48\x59\x73\x00\x00\x04\xc2\x00\x00\x04\xc2\x01\
-\xbc\xcf\x90\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\xd9\x06\x08\
-\x0c\x26\x16\x8d\x01\xf5\x19\x00\x00\x00\xe5\x49\x44\x41\x54\x38\
-\xcb\xdd\xd5\x41\x6a\xc3\x30\x10\x05\xd0\xff\xbf\xbc\x08\xbe\x4b\
-\x57\x5e\xe4\xd6\xa1\xa1\x87\x08\xa1\x78\x95\xc3\xa4\x68\x64\xbb\
-\x8b\x36\x41\x16\xad\xc2\xc8\xa1\x8b\xce\xce\x88\x79\x36\xf3\xc7\
-\x08\xf8\xae\xd3\xe9\x1d\x5b\x2b\x37\x98\x1f\x9c\xcf\xe3\x92\x52\
-\x6a\x42\xbb\xae\xc3\x7e\x3f\xdc\xbd\x2e\x3f\xbc\x5e\x3f\x30\x0c\
-\x2f\x58\x16\x1f\x4a\x02\xe3\x78\x59\xbf\x28\x7f\x30\x33\x90\xc4\
-\x34\x4d\xce\xaf\x0d\x30\xb3\x1a\x1c\x21\x09\xe4\xec\x82\x25\xc1\
-\x2c\xd6\xe0\x04\x29\x40\xf2\xc2\x01\x66\xa9\x3e\x8a\x10\x02\xe6\
-\xd9\x07\x87\xf0\x70\x14\x5f\xb0\x77\xc6\x0f\xe1\x94\x12\x48\x42\
-\x92\x73\x2b\x88\x72\x4d\x57\x70\x8c\xf1\x1e\x86\xb7\x6e\xbd\xbf\
-\x86\xd7\x0a\x57\xc3\xbb\x85\x46\xd2\x0d\x97\x81\xab\x5c\x9b\xd6\
-\x2a\x7b\xb5\x4e\x57\xcd\x70\xd9\xfb\x57\x30\x37\xc0\xac\xcd\x58\
-\x1b\x66\xac\xff\x05\x3f\x6f\xdd\x56\x3f\x48\xdf\xef\x70\x38\xbc\
-\x36\xdd\x20\x7d\xbf\xfb\xf9\xf0\x78\x7c\xdb\x7c\x99\xe6\xc6\x27\
-\x32\x00\x5d\x09\xa9\x50\xf3\xdb\x00\x00\x00\x00\x49\x45\x4e\x44\
-\xae\x42\x60\x82\
 \x00\x00\x02\x9a\
 \x89\
 \x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -26054,62 +25712,10 @@
 \x00\x77\
 \x00\x69\x00\x7a\x00\x61\x00\x72\x00\x64\x00\x5f\x00\x69\x00\x6d\x00\x70\x00\x6f\x00\x72\x00\x74\x00\x62\x00\x69\x00\x62\x00\x6c\
 \x00\x65\x00\x2e\x00\x62\x00\x6d\x00\x70\
-\x00\x0a\
-\x0b\x25\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x38\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x26\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x39\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x27\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x36\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0b\
-\x02\xa9\xac\x27\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x31\x00\x32\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x28\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x37\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x29\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x34\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0f\
-\x01\xbe\xbf\x47\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x62\x00\x72\x00\x69\x00\x64\x00\x67\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x2a\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x35\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x2b\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x32\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x2c\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x33\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0b\
-\x02\xaf\xac\x27\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x31\x00\x30\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0f\
-\x02\xb0\xb0\x67\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x63\x00\x68\x00\x6f\x00\x72\x00\x75\x00\x73\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0b\x2e\x98\xe7\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x31\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0b\
-\x02\xb0\xac\x27\
-\x00\x70\
-\x00\x61\x00\x67\x00\x65\x00\x5f\x00\x31\x00\x31\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x09\
+\x0f\xa8\xa3\x07\
+\x00\x73\
+\x00\x6c\x00\x69\x00\x64\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\
 \x00\x17\
 \x02\x7d\x48\xe7\
 \x00\x70\
@@ -26478,10 +26084,10 @@
 
 qt_resource_struct = "\
 \x00\x00\x00\x00\x00\x02\x00\x00\x00\x12\x00\x00\x00\x01\
-\x00\x00\x00\xb8\x00\x02\x00\x00\x00\x06\x00\x00\x00\x77\
-\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x73\
-\x00\x00\x00\x86\x00\x02\x00\x00\x00\x08\x00\x00\x00\x6b\
-\x00\x00\x00\xf8\x00\x02\x00\x00\x00\x0e\x00\x00\x00\x5d\
+\x00\x00\x00\xb8\x00\x02\x00\x00\x00\x06\x00\x00\x00\x6a\
+\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x66\
+\x00\x00\x00\x86\x00\x02\x00\x00\x00\x08\x00\x00\x00\x5e\
+\x00\x00\x00\xf8\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5d\
 \x00\x00\x00\xa8\x00\x02\x00\x00\x00\x14\x00\x00\x00\x49\
 \x00\x00\x00\x14\x00\x02\x00\x00\x00\x02\x00\x00\x00\x47\
 \x00\x00\x00\xd8\x00\x02\x00\x00\x00\x02\x00\x00\x00\x45\
@@ -26501,107 +26107,94 @@
 \x00\x00\x02\x6a\x00\x00\x00\x00\x00\x01\x00\x00\x11\x1c\
 \x00\x00\x02\x92\x00\x00\x00\x00\x00\x01\x00\x00\x13\xba\
 \x00\x00\x02\xc0\x00\x00\x00\x00\x00\x01\x00\x00\x16\xce\
-\x00\x00\x0b\xe2\x00\x00\x00\x00\x00\x01\x00\x04\x9c\x7e\
-\x00\x00\x0c\x08\x00\x00\x00\x00\x00\x01\x00\x04\x9e\xb5\
-\x00\x00\x0c\x54\x00\x00\x00\x00\x00\x01\x00\x04\xa3\xf7\
-\x00\x00\x0b\xbe\x00\x00\x00\x00\x00\x01\x00\x04\x9a\x37\
-\x00\x00\x0b\x4e\x00\x00\x00\x00\x00\x01\x00\x04\x93\x06\
-\x00\x00\x0b\x72\x00\x00\x00\x00\x00\x01\x00\x04\x95\xad\
-\x00\x00\x0b\x98\x00\x00\x00\x00\x00\x01\x00\x04\x98\x20\
-\x00\x00\x0c\x32\x00\x00\x00\x00\x00\x01\x00\x04\xa1\x53\
+\x00\x00\x0a\x74\x00\x00\x00\x00\x00\x01\x00\x04\x89\x05\
+\x00\x00\x0a\x9a\x00\x00\x00\x00\x00\x01\x00\x04\x8b\x3c\
+\x00\x00\x0a\xe6\x00\x00\x00\x00\x00\x01\x00\x04\x90\x7e\
+\x00\x00\x0a\x50\x00\x00\x00\x00\x00\x01\x00\x04\x86\xbe\
+\x00\x00\x09\xe0\x00\x00\x00\x00\x00\x01\x00\x04\x7f\x8d\
+\x00\x00\x0a\x04\x00\x00\x00\x00\x00\x01\x00\x04\x82\x34\
+\x00\x00\x0a\x2a\x00\x00\x00\x00\x00\x01\x00\x04\x84\xa7\
+\x00\x00\x0a\xc4\x00\x00\x00\x00\x00\x01\x00\x04\x8d\xda\
 \x00\x00\x01\xa4\x00\x00\x00\x00\x00\x01\x00\x00\x04\xb5\
 \x00\x00\x02\x0a\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x9b\
 \x00\x00\x01\xd6\x00\x00\x00\x00\x00\x01\x00\x00\x07\xb3\
-\x00\x00\x0d\xd4\x00\x00\x00\x00\x00\x01\x00\x04\xb9\x11\
-\x00\x00\x0e\x04\x00\x00\x00\x00\x00\x01\x00\x05\x28\x56\
+\x00\x00\x0c\x66\x00\x00\x00\x00\x00\x01\x00\x04\xa5\x98\
+\x00\x00\x0c\x96\x00\x00\x00\x00\x00\x01\x00\x05\x14\xdd\
 \x00\x00\x01\x5c\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
 \x00\x00\x01\x82\x00\x00\x00\x00\x00\x01\x00\x00\x02\x9e\
-\x00\x00\x0e\xa8\x00\x00\x00\x00\x00\x01\x00\x06\x0e\xe0\
-\x00\x00\x10\x70\x00\x00\x00\x00\x00\x01\x00\x06\x2d\x3f\
-\x00\x00\x0e\xf0\x00\x00\x00\x00\x00\x01\x00\x06\x15\x0e\
-\x00\x00\x0f\xb4\x00\x00\x00\x00\x00\x01\x00\x06\x1f\x2c\
-\x00\x00\x10\x10\x00\x00\x00\x00\x00\x01\x00\x06\x24\x56\
-\x00\x00\x0e\xce\x00\x00\x00\x00\x00\x01\x00\x06\x12\x11\
-\x00\x00\x0f\x24\x00\x00\x00\x00\x00\x01\x00\x06\x16\xde\
-\x00\x00\x10\x3c\x00\x00\x00\x00\x00\x01\x00\x06\x29\x62\
-\x00\x00\x10\x96\x00\x00\x00\x00\x00\x01\x00\x06\x30\x21\
-\x00\x00\x0f\x4e\x00\x00\x00\x00\x00\x01\x00\x06\x19\x42\
-\x00\x00\x0f\xd8\x00\x00\x00\x00\x00\x01\x00\x06\x21\xe0\
-\x00\x00\x0f\x7e\x00\x00\x00\x00\x00\x01\x00\x06\x1c\x7c\
-\x00\x00\x09\x96\x00\x00\x00\x00\x00\x01\x00\x04\x71\xb5\
-\x00\x00\x09\xfe\x00\x00\x00\x00\x00\x01\x00\x04\x7b\x44\
-\x00\x00\x09\xb6\x00\x00\x00\x00\x00\x01\x00\x04\x75\x92\
-\x00\x00\x09\xdc\x00\x00\x00\x00\x00\x01\x00\x04\x78\x0a\
-\x00\x00\x09\x70\x00\x00\x00\x00\x00\x01\x00\x04\x6f\x17\
-\x00\x00\x0d\x74\x00\x00\x00\x00\x00\x01\x00\x04\xb5\x25\
-\x00\x00\x0d\xaa\x00\x00\x00\x00\x00\x01\x00\x04\xb7\x0d\
-\x00\x00\x0c\x7e\x00\x00\x00\x00\x00\x01\x00\x04\xa6\xc2\
-\x00\x00\x0d\x0a\x00\x00\x00\x00\x00\x01\x00\x04\xad\x50\
-\x00\x00\x0c\xd4\x00\x00\x00\x00\x00\x01\x00\x04\xab\x57\
-\x00\x00\x0d\x2e\x00\x00\x00\x00\x00\x01\x00\x04\xaf\xe1\
-\x00\x00\x0d\x50\x00\x00\x00\x00\x00\x01\x00\x04\xb1\xf4\
-\x00\x00\x0c\xb2\x00\x00\x00\x00\x00\x01\x00\x04\xa8\xb9\
-\x00\x00\x05\x26\x00\x00\x00\x00\x00\x01\x00\x02\xd5\xfc\
-\x00\x00\x05\x00\x00\x00\x00\x00\x00\x01\x00\x02\xd3\x5e\
-\x00\x00\x0e\x5e\x00\x00\x00\x00\x00\x01\x00\x06\x09\xfb\
-\x00\x00\x0e\x86\x00\x00\x00\x00\x00\x01\x00\x06\x0c\x99\
-\x00\x00\x0e\x3a\x00\x00\x00\x00\x00\x01\x00\x06\x07\x5b\
-\x00\x00\x04\x9c\x00\x00\x00\x00\x00\x01\x00\x02\xce\xa9\
-\x00\x00\x04\xd0\x00\x00\x00\x00\x00\x01\x00\x02\xd1\x47\
-\x00\x00\x10\xba\x00\x00\x00\x00\x00\x01\x00\x06\x33\xd4\
-\x00\x00\x10\xde\x00\x00\x00\x00\x00\x01\x00\x06\x36\xd2\
-\x00\x00\x06\xbe\x00\x00\x00\x00\x00\x01\x00\x04\x2d\x66\
-\x00\x00\x07\x98\x00\x00\x00\x00\x00\x01\x00\x04\x3f\xff\
-\x00\x00\x09\x50\x00\x00\x00\x00\x00\x01\x00\x04\x6b\x24\
-\x00\x00\x09\x1e\x00\x00\x00\x00\x00\x01\x00\x04\x64\x0e\
-\x00\x00\x08\x12\x00\x00\x00\x00\x00\x01\x00\x04\x48\x5f\
-\x00\x00\x07\x32\x00\x00\x00\x00\x00\x01\x00\x04\x37\x0d\
-\x00\x00\x08\xa4\x00\x00\x00\x00\x00\x01\x00\x04\x5b\x02\
-\x00\x00\x08\xce\x00\x00\x00\x00\x00\x01\x00\x04\x5d\x37\
-\x00\x00\x07\xe4\x00\x00\x00\x00\x00\x01\x00\x04\x45\xdf\
-\x00\x00\x07\x78\x00\x00\x00\x00\x00\x01\x00\x04\x3c\xf3\
-\x00\x00\x08\x56\x00\x00\x00\x00\x00\x01\x00\x04\x4e\xb8\
-\x00\x00\x08\x38\x00\x00\x00\x00\x00\x01\x00\x04\x4c\x71\
-\x00\x00\x08\xf0\x00\x00\x00\x00\x00\x01\x00\x04\x61\x3b\
-\x00\x00\x06\x70\x00\x00\x00\x00\x00\x01\x00\x04\x24\x08\
-\x00\x00\x06\xe2\x00\x00\x00\x00\x00\x01\x00\x04\x30\x52\
-\x00\x00\x07\x0e\x00\x00\x00\x00\x00\x01\x00\x04\x33\x94\
-\x00\x00\x07\x56\x00\x00\x00\x00\x00\x01\x00\x04\x39\xab\
-\x00\x00\x07\xc0\x00\x00\x00\x00\x00\x01\x00\x04\x43\x5d\
-\x00\x00\x08\x74\x00\x00\x00\x00\x00\x01\x00\x04\x51\x5a\
-\x00\x00\x06\x9e\x00\x00\x00\x00\x00\x01\x00\x04\x2a\xc6\
-\x00\x00\x03\xb4\x00\x00\x00\x00\x00\x01\x00\x02\xc2\x5e\
-\x00\x00\x03\x64\x00\x00\x00\x00\x00\x01\x00\x02\xbe\x02\
-\x00\x00\x04\x26\x00\x00\x00\x00\x00\x01\x00\x02\xc8\xa4\
-\x00\x00\x04\x80\x00\x00\x00\x00\x00\x01\x00\x02\xcd\x40\
-\x00\x00\x04\x42\x00\x00\x00\x00\x00\x01\x00\x02\xca\x0d\
+\x00\x00\x0d\x3a\x00\x00\x00\x00\x00\x01\x00\x05\xfb\x67\
+\x00\x00\x0f\x02\x00\x00\x00\x00\x00\x01\x00\x06\x19\xc6\
+\x00\x00\x0d\x82\x00\x00\x00\x00\x00\x01\x00\x06\x01\x95\
+\x00\x00\x0e\x46\x00\x00\x00\x00\x00\x01\x00\x06\x0b\xb3\
+\x00\x00\x0e\xa2\x00\x00\x00\x00\x00\x01\x00\x06\x10\xdd\
+\x00\x00\x0d\x60\x00\x00\x00\x00\x00\x01\x00\x05\xfe\x98\
+\x00\x00\x0d\xb6\x00\x00\x00\x00\x00\x01\x00\x06\x03\x65\
+\x00\x00\x0e\xce\x00\x00\x00\x00\x00\x01\x00\x06\x15\xe9\
+\x00\x00\x0f\x28\x00\x00\x00\x00\x00\x01\x00\x06\x1c\xa8\
+\x00\x00\x0d\xe0\x00\x00\x00\x00\x00\x01\x00\x06\x05\xc9\
+\x00\x00\x0e\x6a\x00\x00\x00\x00\x00\x01\x00\x06\x0e\x67\
+\x00\x00\x0e\x10\x00\x00\x00\x00\x00\x01\x00\x06\x09\x03\
+\x00\x00\x08\x28\x00\x00\x00\x00\x00\x01\x00\x04\x5e\x3c\
+\x00\x00\x08\x90\x00\x00\x00\x00\x00\x01\x00\x04\x67\xcb\
+\x00\x00\x08\x48\x00\x00\x00\x00\x00\x01\x00\x04\x62\x19\
+\x00\x00\x08\x6e\x00\x00\x00\x00\x00\x01\x00\x04\x64\x91\
+\x00\x00\x08\x02\x00\x00\x00\x00\x00\x01\x00\x04\x5b\x9e\
+\x00\x00\x0c\x06\x00\x00\x00\x00\x00\x01\x00\x04\xa1\xac\
+\x00\x00\x0c\x3c\x00\x00\x00\x00\x00\x01\x00\x04\xa3\x94\
+\x00\x00\x0b\x10\x00\x00\x00\x00\x00\x01\x00\x04\x93\x49\
+\x00\x00\x0b\x9c\x00\x00\x00\x00\x00\x01\x00\x04\x99\xd7\
+\x00\x00\x0b\x66\x00\x00\x00\x00\x00\x01\x00\x04\x97\xde\
+\x00\x00\x0b\xc0\x00\x00\x00\x00\x00\x01\x00\x04\x9c\x68\
+\x00\x00\x0b\xe2\x00\x00\x00\x00\x00\x01\x00\x04\x9e\x7b\
+\x00\x00\x0b\x44\x00\x00\x00\x00\x00\x01\x00\x04\x95\x40\
+\x00\x00\x03\xb8\x00\x00\x00\x00\x00\x01\x00\x02\xc2\x83\
+\x00\x00\x03\x92\x00\x00\x00\x00\x00\x01\x00\x02\xbf\xe5\
+\x00\x00\x0c\xf0\x00\x00\x00\x00\x00\x01\x00\x05\xf6\x82\
+\x00\x00\x0d\x18\x00\x00\x00\x00\x00\x01\x00\x05\xf9\x20\
+\x00\x00\x0c\xcc\x00\x00\x00\x00\x00\x01\x00\x05\xf3\xe2\
+\x00\x00\x03\x2e\x00\x00\x00\x00\x00\x01\x00\x02\xbb\x30\
+\x00\x00\x03\x62\x00\x00\x00\x00\x00\x01\x00\x02\xbd\xce\
+\x00\x00\x0f\x4c\x00\x00\x00\x00\x00\x01\x00\x06\x20\x5b\
+\x00\x00\x0f\x70\x00\x00\x00\x00\x00\x01\x00\x06\x23\x59\
+\x00\x00\x05\x50\x00\x00\x00\x00\x00\x01\x00\x04\x19\xed\
+\x00\x00\x06\x2a\x00\x00\x00\x00\x00\x01\x00\x04\x2c\x86\
+\x00\x00\x07\xe2\x00\x00\x00\x00\x00\x01\x00\x04\x57\xab\
+\x00\x00\x07\xb0\x00\x00\x00\x00\x00\x01\x00\x04\x50\x95\
+\x00\x00\x06\xa4\x00\x00\x00\x00\x00\x01\x00\x04\x34\xe6\
+\x00\x00\x05\xc4\x00\x00\x00\x00\x00\x01\x00\x04\x23\x94\
+\x00\x00\x07\x36\x00\x00\x00\x00\x00\x01\x00\x04\x47\x89\
+\x00\x00\x07\x60\x00\x00\x00\x00\x00\x01\x00\x04\x49\xbe\
+\x00\x00\x06\x76\x00\x00\x00\x00\x00\x01\x00\x04\x32\x66\
+\x00\x00\x06\x0a\x00\x00\x00\x00\x00\x01\x00\x04\x29\x7a\
+\x00\x00\x06\xe8\x00\x00\x00\x00\x00\x01\x00\x04\x3b\x3f\
+\x00\x00\x06\xca\x00\x00\x00\x00\x00\x01\x00\x04\x38\xf8\
+\x00\x00\x07\x82\x00\x00\x00\x00\x00\x01\x00\x04\x4d\xc2\
+\x00\x00\x05\x02\x00\x00\x00\x00\x00\x01\x00\x04\x10\x8f\
+\x00\x00\x05\x74\x00\x00\x00\x00\x00\x01\x00\x04\x1c\xd9\
+\x00\x00\x05\xa0\x00\x00\x00\x00\x00\x01\x00\x04\x20\x1b\
+\x00\x00\x05\xe8\x00\x00\x00\x00\x00\x01\x00\x04\x26\x32\
+\x00\x00\x06\x52\x00\x00\x00\x00\x00\x01\x00\x04\x2f\xe4\
+\x00\x00\x07\x06\x00\x00\x00\x00\x00\x01\x00\x04\x3d\xe1\
+\x00\x00\x05\x30\x00\x00\x00\x00\x00\x01\x00\x04\x17\x4d\
 \x00\x00\x03\x16\x00\x00\x00\x00\x00\x01\x00\x02\xb9\xc7\
-\x00\x00\x03\x30\x00\x00\x00\x00\x00\x01\x00\x02\xbb\x30\
-\x00\x00\x03\x4a\x00\x00\x00\x00\x00\x01\x00\x02\xbc\x99\
-\x00\x00\x03\x80\x00\x00\x00\x00\x00\x01\x00\x02\xbf\x6b\
-\x00\x00\x03\x9a\x00\x00\x00\x00\x00\x01\x00\x02\xc0\xd4\
-\x00\x00\x03\xd8\x00\x00\x00\x00\x00\x01\x00\x02\xc3\xf8\
-\x00\x00\x03\xf2\x00\x00\x00\x00\x00\x01\x00\x02\xc5\x8c\
-\x00\x00\x04\x0c\x00\x00\x00\x00\x00\x01\x00\x02\xc7\x1c\
-\x00\x00\x04\x66\x00\x00\x00\x00\x00\x01\x00\x02\xcb\xa3\
-\x00\x00\x0a\x48\x00\x00\x00\x00\x00\x01\x00\x04\x80\x18\
-\x00\x00\x0a\xb4\x00\x00\x00\x00\x00\x01\x00\x04\x88\x0b\
-\x00\x00\x0a\xe6\x00\x00\x00\x00\x00\x01\x00\x04\x8a\x36\
-\x00\x00\x0a\x8e\x00\x00\x00\x00\x00\x01\x00\x04\x86\x05\
-\x00\x00\x0a\x6c\x00\x00\x00\x00\x00\x01\x00\x04\x82\x32\
-\x00\x00\x0b\x2c\x00\x00\x00\x00\x00\x01\x00\x04\x90\x30\
-\x00\x00\x0a\x24\x00\x00\x00\x00\x00\x01\x00\x04\x7d\xc6\
-\x00\x00\x0b\x08\x00\x00\x00\x00\x00\x01\x00\x04\x8c\x99\
-\x00\x00\x10\xfe\x00\x00\x00\x00\x00\x01\x00\x06\x39\x55\
-\x00\x00\x11\x60\x00\x00\x00\x00\x00\x01\x00\x06\x3f\xcb\
-\x00\x00\x11\x32\x00\x00\x00\x00\x00\x01\x00\x06\x3c\xb7\
-\x00\x00\x11\x88\x00\x00\x00\x00\x00\x01\x00\x06\x42\x69\
-\x00\x00\x05\xd8\x00\x00\x00\x00\x00\x01\x00\x03\x11\xe7\
-\x00\x00\x05\x78\x00\x00\x00\x00\x00\x01\x00\x02\xe2\xa7\
-\x00\x00\x05\x48\x00\x00\x00\x00\x00\x01\x00\x02\xd8\x13\
-\x00\x00\x05\xa8\x00\x00\x00\x00\x00\x01\x00\x02\xf7\xdc\
-\x00\x00\x06\x08\x00\x00\x00\x00\x00\x01\x00\x03\x16\x04\
-\x00\x00\x06\x3c\x00\x00\x00\x00\x00\x01\x00\x03\xde\x9d\
+\x00\x00\x08\xda\x00\x00\x00\x00\x00\x01\x00\x04\x6c\x9f\
+\x00\x00\x09\x46\x00\x00\x00\x00\x00\x01\x00\x04\x74\x92\
+\x00\x00\x09\x78\x00\x00\x00\x00\x00\x01\x00\x04\x76\xbd\
+\x00\x00\x09\x20\x00\x00\x00\x00\x00\x01\x00\x04\x72\x8c\
+\x00\x00\x08\xfe\x00\x00\x00\x00\x00\x01\x00\x04\x6e\xb9\
+\x00\x00\x09\xbe\x00\x00\x00\x00\x00\x01\x00\x04\x7c\xb7\
+\x00\x00\x08\xb6\x00\x00\x00\x00\x00\x01\x00\x04\x6a\x4d\
+\x00\x00\x09\x9a\x00\x00\x00\x00\x00\x01\x00\x04\x79\x20\
+\x00\x00\x0f\x90\x00\x00\x00\x00\x00\x01\x00\x06\x25\xdc\
+\x00\x00\x0f\xf2\x00\x00\x00\x00\x00\x01\x00\x06\x2c\x52\
+\x00\x00\x0f\xc4\x00\x00\x00\x00\x00\x01\x00\x06\x29\x3e\
+\x00\x00\x10\x1a\x00\x00\x00\x00\x00\x01\x00\x06\x2e\xf0\
+\x00\x00\x04\x6a\x00\x00\x00\x00\x00\x01\x00\x02\xfe\x6e\
+\x00\x00\x04\x0a\x00\x00\x00\x00\x00\x01\x00\x02\xcf\x2e\
+\x00\x00\x03\xda\x00\x00\x00\x00\x00\x01\x00\x02\xc4\x9a\
+\x00\x00\x04\x3a\x00\x00\x00\x00\x00\x01\x00\x02\xe4\x63\
+\x00\x00\x04\x9a\x00\x00\x00\x00\x00\x01\x00\x03\x02\x8b\
+\x00\x00\x04\xce\x00\x00\x00\x00\x00\x01\x00\x03\xcb\x24\
 "
 
 def qInitResources():
@@ -26609,3 +26202,5 @@
 
 def qCleanupResources():
     QtCore.qUnregisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
+
+qInitResources()

=== modified file 'openlp/core/ui/maindisplay.py'
--- openlp/core/ui/maindisplay.py	2009-11-30 20:34:45 +0000
+++ openlp/core/ui/maindisplay.py	2009-12-02 12:20:26 +0000
@@ -198,7 +198,7 @@
             self.displayAlert()
         elif not self.displayBlank:
             if transition:
-                if self.hasTransition:
+                if self.hasTransition and self.frame[u'trans'] is not None:
                     self.display.setPixmap(QtGui.QPixmap.fromImage(self.frame[u'trans']))
                     self.repaint()
                     self.display.setPixmap(QtGui.QPixmap.fromImage(frame[u'trans']))

=== modified file 'openlp/core/ui/slidecontroller.py'
--- openlp/core/ui/slidecontroller.py	2009-11-30 20:34:45 +0000
+++ openlp/core/ui/slidecontroller.py	2009-12-02 12:20:26 +0000
@@ -173,7 +173,7 @@
                 self.trUtf8('Move to live'), self.onGoLive)
             self.Toolbar.addToolbarSeparator(u'Close Separator')
             self.Toolbar.addToolbarButton(
-                u'Edit Song', u':songs/song_edit.png',
+                u'Edit Song', u':/songs/song_edit.png',
                 self.trUtf8('Edit and re-preview Song'), self.onEditSong)
         if isLive:
             self.Toolbar.addToolbarSeparator(u'Loop Separator')
@@ -209,19 +209,25 @@
         # Build the Song Toolbar
         if isLive:
             self.Songbar = OpenLPToolbar(self)
-            self.Songbar.addToolbarButton(
-                u'Bridge',  u':/pages/page_bridge.png',
-                self.trUtf8('Bridge'),
-                self.onSongBarHandler)
-            self.Songbar.addToolbarButton(
-                u'Chorus',  u':/pages/page_chorus.png',
-                self.trUtf8('Chorus'),
-                self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Intro:1',  u'I',
+                self.trUtf8('Intro'),self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Bridge:1',  u'B',
+                self.trUtf8('Bridge'),self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'PreChorus:1',  u'P',
+                self.trUtf8('PreChorus'), self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Chorus:1',  u'C',
+                self.trUtf8('Chorus'), self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Tag:1',  u'T',
+                self.trUtf8('Tag'), self.onSongBarHandler)
             for verse in range(1, 12):
                 self.Songbar.addToolbarButton(
-                    unicode(verse),  u':/pages/page_%s.png' % verse,
-                    unicode(self.trUtf8('Verse %s'))%verse,
+                    unicode(u'Verse:%s'% verse), u'%s' % verse,
+                    unicode(self.trUtf8('Verse %s'))% verse,
                     self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Other:1',  u'O',
+                self.trUtf8('Other'), self.onSongBarHandler)
+            self.Songbar.addToolbarButton(u'Ending:1',  u'E',
+                self.trUtf8('Ending'), self.onSongBarHandler)
             self.ControllerLayout.addWidget(self.Songbar)
             self.Songbar.setVisible(False)
         # Screen preview area
@@ -312,19 +318,14 @@
         pass
 
     def onSongBarHandler(self):
-        request = self.sender().text()
-        if request == u'Bridge':
-            pass
-        elif request == u'Chorus':
-            pass
+        request = unicode(self.sender().text())
+        #Remember list is 1 out!
+        slideno = self.slideList[request]
+        if slideno > self.PreviewListWidget.rowCount():
+            self.PreviewListWidget.selectRow(self.PreviewListWidget.rowCount())
         else:
-            #Remember list is 1 out!
-            slideno = int(request) - 1
-            if slideno > self.PreviewListWidget.rowCount():
-                self.PreviewListWidget.selectRow(self.PreviewListWidget.rowCount())
-            else:
-                self.PreviewListWidget.selectRow(slideno)
-            self.onSlideSelected()
+            self.PreviewListWidget.selectRow(slideno)
+        self.onSlideSelected()
 
     def receiveSpinDelay(self, value):
         self.DelaySpinBox.setValue(int(value))
@@ -354,15 +355,8 @@
                 for action in self.Songbar.actions:
                     self.Songbar.actions[action].setVisible(False)
                 if item.verse_order:
-                    verses = item.verse_order.split(u' ')
-#                    for verse in verses:
-#                        if not verse or int(verse) > 12:
-#                            break
-#                        try:
-#                            self.Songbar.actions[verse].setVisible(True)
-#                        except:
-#                            #More than 20 verses hard luck
-#                            pass
+                    for slide in self.slideList:
+                        self.Songbar.actions[slide].setVisible(True)
                     self.Songbar.setVisible(True)
         elif item.is_image():
             #Not sensible to allow loops with 1 frame
@@ -451,7 +445,11 @@
             slide_height = 0
             #It is a based Text Render
             if self.serviceItem.is_text():
-                self.slideList[frame[u'verseTag']] = framenumber
+                #only load the slot once
+                try:
+                    test = self.slideList[frame[u'verseTag']]
+                except:
+                    self.slideList[frame[u'verseTag']] = framenumber
                 item.setText(frame[u'text'])
             else:
                 label = QtGui.QLabel()

=== modified file 'openlp/plugins/songs/forms/editsongform.py'
--- openlp/plugins/songs/forms/editsongform.py	2009-11-30 20:34:45 +0000
+++ openlp/plugins/songs/forms/editsongform.py	2009-12-02 12:20:26 +0000
@@ -315,7 +315,7 @@
         self.VerseDeleteButton.setEnabled(True)
 
     def onVerseAddButtonClicked(self):
-        self.verse_form.setVerse(u'')
+        self.verse_form.setVerse(u'', self.VerseListWidget.count() + 1, True)
         self.verse_form.exec_()
         afterText, verse, subVerse = self.verse_form.getVerse()
         data = u'%s:%s' %(verse, subVerse)
@@ -329,7 +329,8 @@
         if item:
             tempText = item.text()
             verseId = unicode((item.data(QtCore.Qt.UserRole)).toString())
-            self.verse_form.setVerse(tempText, True, verseId)
+            self.verse_form.setVerse(tempText, \
+                self.VerseListWidget.count(), True, verseId)
             self.verse_form.exec_()
             afterText, verse, subVerse = self.verse_form.getVerse()
             data = u'%s:%s' %(verse, subVerse)
@@ -401,13 +402,13 @@
             self.SongTabWidget.setCurrentIndex(2)
             self.AuthorsListView.setFocus()
         for verse in unicode(self.VerseOrderEdit.text()):
-            if verse.isdigit() or u' BC'.find(verse) > -1:
+            if verse.isdigit() or u' BCITPEO'.find(verse.upper()) > -1:
                 pass
             else:
                 self.SongTabWidget.setCurrentIndex(0)
                 self.VerseOrderEdit.setFocus()
                 return False, \
-                    self.trUtf8('Invalid verse entry - values must be Numeric, B or C')
+                    self.trUtf8('Invalid verse entry - values must be Numeric, I,B,C,T,P,E,O')
         return True, u''
 
     def onTitleEditItemLostFocus(self):

=== modified file 'openlp/plugins/songs/forms/editversedialog.py'
--- openlp/plugins/songs/forms/editversedialog.py	2009-11-30 20:29:26 +0000
+++ openlp/plugins/songs/forms/editversedialog.py	2009-12-02 12:20:26 +0000
@@ -1,88 +1,91 @@
 # -*- coding: utf-8 -*-
-# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4
 
-###############################################################################
-# OpenLP - Open Source Lyrics Projection                                      #
-# --------------------------------------------------------------------------- #
-# Copyright (c) 2008-2009 Raoul Snyman                                        #
-# Portions copyright (c) 2008-2009 Tim Bentley, Jonathan Corwin, Michael      #
-# Gorven, Scott Guerrieri, Maikel Stuivenberg, Martin Thompson, Jon Tibble,   #
-# Carsten Tinggaard                                                           #
-# --------------------------------------------------------------------------- #
-# This program is free software; you can redistribute it and/or modify it     #
-# under the terms of the GNU General Public License as published by the Free  #
-# Software Foundation; version 2 of the License.                              #
-#                                                                             #
-# This program is distributed in the hope that it will be useful, but WITHOUT #
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or       #
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for    #
-# more details.                                                               #
-#                                                                             #
-# You should have received a copy of the GNU General Public License along     #
-# with this program; if not, write to the Free Software Foundation, Inc., 59  #
-# Temple Place, Suite 330, Boston, MA 02111-1307 USA                          #
-###############################################################################
+# Form implementation generated from reading ui file 'editversedialog.ui'
+#
+# Created: Wed Dec  2 08:14:47 2009
+#      by: PyQt4 UI code generator 4.6.2
+#
+# WARNING! All changes made in this file will be lost!
 
 from PyQt4 import QtCore, QtGui
 
 class Ui_EditVerseDialog(object):
     def setupUi(self, EditVerseDialog):
         EditVerseDialog.setObjectName("EditVerseDialog")
-        EditVerseDialog.resize(492, 494)
+        EditVerseDialog.resize(500, 521)
         EditVerseDialog.setModal(True)
-        self.widget = QtGui.QWidget(EditVerseDialog)
-        self.widget.setGeometry(QtCore.QRect(9, 12, 471, 471))
-        self.widget.setObjectName("widget")
-        self.verticalLayout = QtGui.QVBoxLayout(self.widget)
-        self.verticalLayout.setObjectName("verticalLayout")
+        self.layoutWidget = QtGui.QWidget(EditVerseDialog)
+        self.layoutWidget.setGeometry(QtCore.QRect(11, 1, 471, 491))
+        self.layoutWidget.setObjectName("layoutWidget")
+        self.verticalLayout_3 = QtGui.QVBoxLayout(self.layoutWidget)
+        self.verticalLayout_3.setObjectName("verticalLayout_3")
         self.horizontalLayout = QtGui.QHBoxLayout()
         self.horizontalLayout.setObjectName("horizontalLayout")
-        self.VerseListComboBox = QtGui.QComboBox(self.widget)
+        self.verticalLayout = QtGui.QVBoxLayout()
+        self.verticalLayout.setObjectName("verticalLayout")
+        self.VerseTypeLabel = QtGui.QLabel(self.layoutWidget)
+        self.VerseTypeLabel.setTextFormat(QtCore.Qt.PlainText)
+        self.VerseTypeLabel.setAlignment(QtCore.Qt.AlignCenter)
+        self.VerseTypeLabel.setObjectName("VerseTypeLabel")
+        self.verticalLayout.addWidget(self.VerseTypeLabel)
+        self.VerseListComboBox = QtGui.QComboBox(self.layoutWidget)
         self.VerseListComboBox.setObjectName("VerseListComboBox")
         self.VerseListComboBox.addItem("")
-        self.VerseListComboBox.setItemText(0, "")
-        self.VerseListComboBox.addItem("")
-        self.VerseListComboBox.addItem("")
-        self.VerseListComboBox.addItem("")
-        self.horizontalLayout.addWidget(self.VerseListComboBox)
-        self.SubVerseListComboBox = QtGui.QComboBox(self.widget)
+        self.VerseListComboBox.addItem("")
+        self.VerseListComboBox.addItem("")
+        self.VerseListComboBox.addItem("")
+        self.VerseListComboBox.addItem("")
+        self.VerseListComboBox.addItem("")
+        self.VerseListComboBox.addItem("")
+        self.verticalLayout.addWidget(self.VerseListComboBox)
+        self.horizontalLayout.addLayout(self.verticalLayout)
+        self.verticalLayout_2 = QtGui.QVBoxLayout()
+        self.verticalLayout_2.setObjectName("verticalLayout_2")
+        self.VerseNumberLabel = QtGui.QLabel(self.layoutWidget)
+        self.VerseNumberLabel.setAlignment(QtCore.Qt.AlignCenter)
+        self.VerseNumberLabel.setObjectName("VerseNumberLabel")
+        self.verticalLayout_2.addWidget(self.VerseNumberLabel)
+        self.SubVerseListComboBox = QtGui.QComboBox(self.layoutWidget)
         self.SubVerseListComboBox.setObjectName("SubVerseListComboBox")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.setItemText(0, "")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.SubVerseListComboBox.addItem("")
-        self.horizontalLayout.addWidget(self.SubVerseListComboBox)
-        self.verticalLayout.addLayout(self.horizontalLayout)
-        self.VerseTextEdit = QtGui.QTextEdit(self.widget)
+        self.verticalLayout_2.addWidget(self.SubVerseListComboBox)
+        self.horizontalLayout.addLayout(self.verticalLayout_2)
+        self.verticalLayout_3.addLayout(self.horizontalLayout)
+        self.VerseTextEdit = QtGui.QTextEdit(self.layoutWidget)
         self.VerseTextEdit.setAcceptRichText(False)
         self.VerseTextEdit.setObjectName("VerseTextEdit")
-        self.verticalLayout.addWidget(self.VerseTextEdit)
+        self.verticalLayout_3.addWidget(self.VerseTextEdit)
         self.horizontalLayout_2 = QtGui.QHBoxLayout()
         self.horizontalLayout_2.setObjectName("horizontalLayout_2")
-        self.addVerse = QtGui.QPushButton(self.widget)
+        self.addBridge = QtGui.QPushButton(self.layoutWidget)
+        self.addBridge.setObjectName("addBridge")
+        self.horizontalLayout_2.addWidget(self.addBridge)
+        self.addVerse = QtGui.QPushButton(self.layoutWidget)
         self.addVerse.setObjectName("addVerse")
         self.horizontalLayout_2.addWidget(self.addVerse)
-        self.addChorus = QtGui.QPushButton(self.widget)
+        self.addChorus = QtGui.QPushButton(self.layoutWidget)
         self.addChorus.setObjectName("addChorus")
         self.horizontalLayout_2.addWidget(self.addChorus)
-        self.addBridge = QtGui.QPushButton(self.widget)
-        self.addBridge.setObjectName("addBridge")
-        self.horizontalLayout_2.addWidget(self.addBridge)
-        self.verticalLayout.addLayout(self.horizontalLayout_2)
-        self.ButtonBox = QtGui.QDialogButtonBox(self.widget)
+        self.verticalLayout_3.addLayout(self.horizontalLayout_2)
+        self.horizontalLayout_3 = QtGui.QHBoxLayout()
+        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
+        self.addPreChorus = QtGui.QPushButton(self.layoutWidget)
+        self.addPreChorus.setObjectName("addPreChorus")
+        self.horizontalLayout_3.addWidget(self.addPreChorus)
+        self.addIntro = QtGui.QPushButton(self.layoutWidget)
+        self.addIntro.setObjectName("addIntro")
+        self.horizontalLayout_3.addWidget(self.addIntro)
+        self.addOther = QtGui.QPushButton(self.layoutWidget)
+        self.addOther.setObjectName("addOther")
+        self.horizontalLayout_3.addWidget(self.addOther)
+        self.addEnding = QtGui.QPushButton(self.layoutWidget)
+        self.addEnding.setObjectName("addEnding")
+        self.horizontalLayout_3.addWidget(self.addEnding)
+        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
+        self.ButtonBox = QtGui.QDialogButtonBox(self.layoutWidget)
         self.ButtonBox.setOrientation(QtCore.Qt.Horizontal)
         self.ButtonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Save)
         self.ButtonBox.setObjectName("ButtonBox")
-        self.verticalLayout.addWidget(self.ButtonBox)
+        self.verticalLayout_3.addWidget(self.ButtonBox)
 
         self.retranslateUi(EditVerseDialog)
         QtCore.QObject.connect(self.ButtonBox, QtCore.SIGNAL("accepted()"), EditVerseDialog.accept)
@@ -91,20 +94,20 @@
 
     def retranslateUi(self, EditVerseDialog):
         EditVerseDialog.setWindowTitle(QtGui.QApplication.translate("EditVerseDialog", "Edit Verse", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseTypeLabel.setText(QtGui.QApplication.translate("EditVerseDialog", "Verse Type", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(0, QtGui.QApplication.translate("EditVerseDialog", "Intro", None, QtGui.QApplication.UnicodeUTF8))
         self.VerseListComboBox.setItemText(1, QtGui.QApplication.translate("EditVerseDialog", "Verse", None, QtGui.QApplication.UnicodeUTF8))
-        self.VerseListComboBox.setItemText(2, QtGui.QApplication.translate("EditVerseDialog", "Chorus", None, QtGui.QApplication.UnicodeUTF8))
-        self.VerseListComboBox.setItemText(3, QtGui.QApplication.translate("EditVerseDialog", "Bridge", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(1, QtGui.QApplication.translate("EditVerseDialog", "1", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(2, QtGui.QApplication.translate("EditVerseDialog", "1a", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(3, QtGui.QApplication.translate("EditVerseDialog", "1b", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(4, QtGui.QApplication.translate("EditVerseDialog", "2", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(5, QtGui.QApplication.translate("EditVerseDialog", "2a", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(6, QtGui.QApplication.translate("EditVerseDialog", "2b", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(7, QtGui.QApplication.translate("EditVerseDialog", "3", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(8, QtGui.QApplication.translate("EditVerseDialog", "4", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(9, QtGui.QApplication.translate("EditVerseDialog", "5", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(10, QtGui.QApplication.translate("EditVerseDialog", "6", None, QtGui.QApplication.UnicodeUTF8))
-        self.SubVerseListComboBox.setItemText(11, QtGui.QApplication.translate("EditVerseDialog", "7", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(2, QtGui.QApplication.translate("EditVerseDialog", "Pre-Chorus", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(3, QtGui.QApplication.translate("EditVerseDialog", "Chorus", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(4, QtGui.QApplication.translate("EditVerseDialog", "Bridge", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(5, QtGui.QApplication.translate("EditVerseDialog", "Ending", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseListComboBox.setItemText(6, QtGui.QApplication.translate("EditVerseDialog", "Other", None, QtGui.QApplication.UnicodeUTF8))
+        self.VerseNumberLabel.setText(QtGui.QApplication.translate("EditVerseDialog", "Number", None, QtGui.QApplication.UnicodeUTF8))
+        self.addBridge.setText(QtGui.QApplication.translate("EditVerseDialog", "Bridge", None, QtGui.QApplication.UnicodeUTF8))
         self.addVerse.setText(QtGui.QApplication.translate("EditVerseDialog", "Verse", None, QtGui.QApplication.UnicodeUTF8))
         self.addChorus.setText(QtGui.QApplication.translate("EditVerseDialog", "Chorus", None, QtGui.QApplication.UnicodeUTF8))
-        self.addBridge.setText(QtGui.QApplication.translate("EditVerseDialog", "Bridge", None, QtGui.QApplication.UnicodeUTF8))
+        self.addPreChorus.setText(QtGui.QApplication.translate("EditVerseDialog", "Pre-Chorus", None, QtGui.QApplication.UnicodeUTF8))
+        self.addIntro.setText(QtGui.QApplication.translate("EditVerseDialog", "Intro", None, QtGui.QApplication.UnicodeUTF8))
+        self.addOther.setText(QtGui.QApplication.translate("EditVerseDialog", "Other", None, QtGui.QApplication.UnicodeUTF8))
+        self.addEnding.setText(QtGui.QApplication.translate("EditVerseDialog", "Ending", None, QtGui.QApplication.UnicodeUTF8))
+

=== modified file 'openlp/plugins/songs/forms/editverseform.py'
--- openlp/plugins/songs/forms/editverseform.py	2009-11-30 20:29:26 +0000
+++ openlp/plugins/songs/forms/editverseform.py	2009-12-02 12:20:26 +0000
@@ -42,17 +42,39 @@
             QtCore.SIGNAL(u'clicked()'), self.onAddChorus)
         QtCore.QObject.connect(self.addBridge,
             QtCore.SIGNAL(u'clicked()'), self.onAddBridge)
+        QtCore.QObject.connect(self.addIntro,
+            QtCore.SIGNAL(u'clicked()'), self.onAddIntro)
+        QtCore.QObject.connect(self.addOther,
+            QtCore.SIGNAL(u'clicked()'), self.onAddOther)
+        QtCore.QObject.connect(self.addPreChorus,
+            QtCore.SIGNAL(u'clicked()'), self.onAddPreChorus)
+        QtCore.QObject.connect(self.addEnding,
+            QtCore.SIGNAL(u'clicked()'), self.onAddEnding)
+        QtCore.QObject.connect(self.VerseListComboBox,
+            QtCore.SIGNAL(u'activated(int)'), self.onVerseComboChanged)
+
+    def onAddIntro(self):
+        self.VerseTextEdit.insertPlainText(u'---[Intro:1]---')
+
+    def onAddEnding(self):
+        self.VerseTextEdit.insertPlainText(u'---[Ending:1]---')
+
+    def onAddOther(self):
+        self.VerseTextEdit.insertPlainText(u'---[Other:1]---')
+
+    def onAddPreChorus(self):
+        self.VerseTextEdit.insertPlainText(u'---[PreChorus:1]---')
 
     def onAddBridge(self):
-        self.VerseTextEdit.insertPlainText(u'---[Bridge:1]---\n')
+        self.VerseTextEdit.insertPlainText(u'---[Bridge:1]---')
 
     def onAddChorus(self):
-        self.VerseTextEdit.insertPlainText(u'---[Chorus:1]---\n')
+        self.VerseTextEdit.insertPlainText(u'---[Chorus:1]---')
 
     def onAddVerse(self):
-        self.VerseTextEdit.insertPlainText(u'---[Verse:1]---\n')
+        self.VerseTextEdit.insertPlainText(u'---[Verse:1]---')
 
-    def setVerse(self, text, single=False, tag=0):
+    def setVerse(self, text, verseCount=0, single=False, tag=u'Verse:1'):
         posVerse = 0
         posSub = 0
         if single:
@@ -65,19 +87,31 @@
                 posSub = 0
             self.VerseListComboBox.setEnabled(True)
             self.SubVerseListComboBox.setEnabled(True)
+            self.SubVerseListComboBox.clear()
+            for i in range(1, verseCount + 1):
+                self.SubVerseListComboBox.addItem(u'%s'% i)
             self.addBridge.setEnabled(False)
             self.addChorus.setEnabled(False)
             self.addVerse.setEnabled(False)
+            self.addIntro.setEnabled(False)
+            self.addPreChorus.setEnabled(False)
+            self.addOther.setEnabled(False)
+            self.addEnding.setEnabled(False)
         else:
             self.VerseListComboBox.setEnabled(False)
             self.SubVerseListComboBox.setEnabled(False)
             self.addBridge.setEnabled(True)
             self.addChorus.setEnabled(True)
             self.addVerse.setEnabled(True)
+            self.addIntro.setEnabled(True)
+            self.addPreChorus.setEnabled(True)
+            self.addOther.setEnabled(True)
+            self.addEnding.setEnabled(True)
         self.VerseListComboBox.setCurrentIndex(posVerse)
         self.SubVerseListComboBox.setCurrentIndex(posSub)
         self.VerseTextEdit.setPlainText(text)
         self.VerseTextEdit.setFocus(QtCore.Qt.OtherFocusReason)
+        self.onVerseComboChanged(0)
 
     def getVerse(self):
        return self.VerseTextEdit.toPlainText(), \
@@ -86,3 +120,10 @@
 
     def getVerseAll(self):
        return self.VerseTextEdit.toPlainText()
+
+    def onVerseComboChanged(self, id):
+        if unicode(self.VerseListComboBox.currentText()) == u'Verse':
+            self.SubVerseListComboBox.setEnabled(True)
+        else:
+            self.SubVerseListComboBox.setEnabled(False)
+            self.SubVerseListComboBox.setCurrentIndex(0)

=== modified file 'resources/forms/editversedialog.ui'
--- resources/forms/editversedialog.ui	2009-11-27 21:54:37 +0000
+++ resources/forms/editversedialog.ui	2009-12-02 12:20:26 +0000
@@ -6,115 +6,100 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>492</width>
-    <height>494</height>
+    <width>500</width>
+    <height>521</height>
    </rect>
   </property>
   <property name="windowTitle">
-   <string>Dialog</string>
+   <string>Edit Verse</string>
   </property>
   <property name="modal">
    <bool>true</bool>
   </property>
-  <widget class="QWidget" name="">
+  <widget class="QWidget" name="layoutWidget">
    <property name="geometry">
     <rect>
-     <x>9</x>
-     <y>12</y>
+     <x>11</x>
+     <y>1</y>
      <width>471</width>
-     <height>471</height>
+     <height>491</height>
     </rect>
    </property>
-   <layout class="QVBoxLayout" name="verticalLayout">
+   <layout class="QVBoxLayout" name="verticalLayout_3">
     <item>
      <layout class="QHBoxLayout" name="horizontalLayout">
       <item>
-       <widget class="QComboBox" name="VerseListComboBox">
-        <item>
-         <property name="text">
-          <string/>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>Verse</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>Chorus</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>Bridge</string>
-         </property>
-        </item>
-       </widget>
+       <layout class="QVBoxLayout" name="verticalLayout">
+        <item>
+         <widget class="QLabel" name="VerseTypeLabel">
+          <property name="text">
+           <string>Verse Type</string>
+          </property>
+          <property name="textFormat">
+           <enum>Qt::PlainText</enum>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QComboBox" name="VerseListComboBox">
+          <item>
+           <property name="text">
+            <string>Intro</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Verse</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Pre-Chorus</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Chorus</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Bridge</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Ending</string>
+           </property>
+          </item>
+          <item>
+           <property name="text">
+            <string>Other</string>
+           </property>
+          </item>
+         </widget>
+        </item>
+       </layout>
       </item>
       <item>
-       <widget class="QComboBox" name="SubVerseListComboBox">
-        <item>
-         <property name="text">
-          <string/>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>1</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>1a</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>1b</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>2</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>2a</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>2b</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>3</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>4</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>5</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>6</string>
-         </property>
-        </item>
-        <item>
-         <property name="text">
-          <string>7</string>
-         </property>
-        </item>
-       </widget>
+       <layout class="QVBoxLayout" name="verticalLayout_2">
+        <item>
+         <widget class="QLabel" name="VerseNumberLabel">
+          <property name="text">
+           <string>Number</string>
+          </property>
+          <property name="alignment">
+           <set>Qt::AlignCenter</set>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QComboBox" name="SubVerseListComboBox"/>
+        </item>
+       </layout>
       </item>
      </layout>
     </item>
@@ -128,6 +113,13 @@
     <item>
      <layout class="QHBoxLayout" name="horizontalLayout_2">
       <item>
+       <widget class="QPushButton" name="addBridge">
+        <property name="text">
+         <string>Bridge</string>
+        </property>
+       </widget>
+      </item>
+      <item>
        <widget class="QPushButton" name="addVerse">
         <property name="text">
          <string>Verse</string>
@@ -141,10 +133,35 @@
         </property>
        </widget>
       </item>
-      <item>
-       <widget class="QPushButton" name="addBridge">
-        <property name="text">
-         <string>Bridge</string>
+     </layout>
+    </item>
+    <item>
+     <layout class="QHBoxLayout" name="horizontalLayout_3">
+      <item>
+       <widget class="QPushButton" name="addPreChorus">
+        <property name="text">
+         <string>Pre-Chorus</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="addIntro">
+        <property name="text">
+         <string>Intro</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="addOther">
+        <property name="text">
+         <string>Other</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="addEnding">
+        <property name="text">
+         <string>Ending</string>
         </property>
        </widget>
       </item>

=== modified file 'resources/images/openlp-2.qrc'
--- resources/images/openlp-2.qrc	2009-11-29 14:07:25 +0000
+++ resources/images/openlp-2.qrc	2009-12-02 12:20:26 +0000
@@ -126,19 +126,6 @@
     <file>theme_import.png</file>
   </qresource>
   <qresource prefix="pages" >
-    <file>page_chorus.png</file>
-    <file>page_bridge.png</file>
-    <file>page_1.png</file>
-    <file>page_2.png</file>
-    <file>page_3.png</file>
-    <file>page_4.png</file>
-    <file>page_5.png</file>
-    <file>page_6.png</file>
-    <file>page_7.png</file>
-    <file>page_8.png</file>
-    <file>page_9.png</file>
-    <file>page_10.png</file>
-    <file>page_11.png</file>
-    <file>page_12.png</file>
+    <file>slide.png</file>
   </qresource>
 </RCC>

=== removed file 'resources/images/page_1.png'
Binary files resources/images/page_1.png	2009-11-08 09:05:41 +0000 and resources/images/page_1.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_10.png'
Binary files resources/images/page_10.png	2009-11-08 09:05:41 +0000 and resources/images/page_10.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_11.png'
Binary files resources/images/page_11.png	2009-11-08 09:05:41 +0000 and resources/images/page_11.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_12.png'
Binary files resources/images/page_12.png	2009-11-08 09:05:41 +0000 and resources/images/page_12.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_2.png'
Binary files resources/images/page_2.png	2009-11-08 09:05:41 +0000 and resources/images/page_2.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_3.png'
Binary files resources/images/page_3.png	2009-11-08 09:05:41 +0000 and resources/images/page_3.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_4.png'
Binary files resources/images/page_4.png	2009-11-08 09:05:41 +0000 and resources/images/page_4.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_5.png'
Binary files resources/images/page_5.png	2009-11-08 09:05:41 +0000 and resources/images/page_5.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_6.png'
Binary files resources/images/page_6.png	2009-11-08 09:05:41 +0000 and resources/images/page_6.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_7.png'
Binary files resources/images/page_7.png	2009-11-08 09:05:41 +0000 and resources/images/page_7.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_8.png'
Binary files resources/images/page_8.png	2009-11-08 09:05:41 +0000 and resources/images/page_8.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_9.png'
Binary files resources/images/page_9.png	2009-11-08 09:05:41 +0000 and resources/images/page_9.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_bridge.png'
Binary files resources/images/page_bridge.png	2009-11-08 09:05:41 +0000 and resources/images/page_bridge.png	1970-01-01 00:00:00 +0000 differ
=== removed file 'resources/images/page_chorus.png'
Binary files resources/images/page_chorus.png	2009-11-08 09:05:41 +0000 and resources/images/page_chorus.png	1970-01-01 00:00:00 +0000 differ

Follow ups